Так выглядит красивее.
Я только не понял, насчёт str_replace, мне что такое, во всех модулях писать, или по циклу проходить? Загадочный метод какой-то.
Попробовал перевести главную на такие шаблоны. С кэшированием. Результаты: было время генерации 0.03-0.04, стало 0.04-0.05.
Но ещё когда я пытался написать свой шаблонизатор, я запоролся на циклах(при выводе комментариев, к примеру).
Какой цикл использовать? Вроде foreach то подходит, но допустим дизайнер захочет сделать чередующиеся фоны у комментариев и ему потребуется узнавать номер итерации, foreach то этого не даст?
Я вот поэтому и не хочу шаблонизатор, ограничения он за собой несёт.
Nestor
Я, в принципе, к этому и стремлюсь. Оба варианта шаблонов предусматривают максимальное разделение, я из них двух выбираю
Но некоторые проверки, можно в принципе сделать только в шаблоне.
Допустим, шаблон для блока новостей один, а варианта есть два: в одном нужна ссылка "Подробнее", в другом нет(когда новость уже открыта).
Решил поднять эту тему, пожалуй, самая подходящая для моего вопроса.
Сам вопрос про систему шаблонов, как лучше сделать
Сейчас простейший вариант: в шаблонах описаны функции openblock() и closeblock(), открытие блока и конец. Недостатки: разрезано описание блока, дополнительное оформление(допустим, полоса внизу блока новости с информацией, вроде даты) задаётся модулем, то есть, расположение текста, к примеру, не поменять.
Решил сделать для каждого блока отдельный, нормальный шаблон. Я вообще не люблю шаблонизаторы, и сделал просто на PHP. Ну, если выводить лишь контент и заголовок достаточно. Но блок новостей получился просто страшный
Видел сравнение echo, print и вывода методами html.
Разница так мала, что её не стоит принимать во внимание. Где-то после четвёртого нуля, насколько я помню.