Суть вопроса: Я выбираю из базы строки затем их форматирую, типа: PHP: function get_rows() { while($row = $result->fetch_array()) { $first[] = my_format_function($row[0]); } return $first; // Возвращаем массив уже отформатированных строк } Дальше я передаю этот массив в шаблон Smarty и он опять в цикле foreach его выводит... т.е. два раза (сначала MySql затем Smarty) проганяются теже строки. Вопрос: возможно ли оптимизировать этот процесс, все-таки как-то не хорошо два раза выполнять схожие действия
А почему сразу не собрать строку нужного вида? PHP: <?php function get_rows() { $s=""; while($row = $result->fetch_array()) { $s.= "делимитер".my_format_function($row[0]); } return $s; // Возвращаем строку для подстановки в шаблон } ?>
MartynK981, это правильно, данные должны генериться перед выводом, а не во время. Только не надо такого что в массиве 25000 элементов, а выводится 10.