Показать сообщение отдельно
  #4 (permalink)  
Старый 31.01.2016, 23:46
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от romansky
Т.е. нужно написать тоже самое, но на сервере?
Вот этого я не знаю, вы же пишите об Ajax и json, а какую цель при этом преследуете вам лучше знать, а не мне. А если Ajax, то значит на клиенте, но:

Сообщение от romansky
И от строковой математики не уйти?
встречный вопрос - каким образом?

Я могу, и пусть на сервере (тоже самое можно сделать и на клиенте), написать вывод данных описываемых массивом. Если данные, это массив, как можно без цикла получить их? Если знаем, что это 16 элементов, и каждый элемент, это вложенный массив из трех элементов, можно конечно методично прописать явно каждый, без цикла:

echo '<div>' . $a[0][0] . '</div><div>'  . $a[0][1] . '</div><div>' . $a[0][2] . '</div>';
echo '<div>' . $a[1][0] . '</div><div>'  . $a[1][1] . '</div><div>' . $a[1][2] . '</div>';
//и так далее все 16 строк


это по вашему разумнее?

а можно так:

echo implode(array_map(function($v) {
    return '<div>' . implode('</div><div>', $v) . '</div>'; 
}, $array));


И все строки полученные из базы будут обрамлены в html-теги, но что в коде не видно for(...) не означает, что не используется цикла. Да, явно мы его не пишем, но встроенные функции implode и array_map его используют. Иначе никак - массив, это данные в ячейках памяти, доступ к каждому значению, это смещение по адресу, как-то его надо указывать. И если массив большой, то как раз выгоднее это обращение описать посредством цикла, а не длинной портянкой с явными указателями на каждое смещение.

Последний раз редактировалось laimas, 31.01.2016 в 23:49.
Ответить с цитированием