С лета пользуюсь Smarty (http://smarty.php.net/manual/ru/). И вот сейчас сижу и офигиваю как удобно. Каждому по Smarty! Знания приобретены при поддержке php.ru
ОО... щас будет холивар. =) Вижу уже его черную тень. Вообще то как то это было(цитирую по памяти): «Смарти — зло! Нет, смарти — гов**. Хм. Может ли гов** быть злом?» IMHO, Смарти — инструмент... очередной инструмент, принесший себя в жертву универсализации. Однако писал на нем, в принципе, задумка не нова... и не так уж и плоха. )
Я вижу у меня есть соратники! Может создать отдельный форум по шаблонизаторам, а яркий пример будет Smarty. За бугром Smarty хорошо распространён, я сужу по рекламе на определенную тематику. За все время работы с ним столкнулся с одной проблемой, время выполнения скрипта вырастает на 10-20% процентов. Не выходя за секундный барьер. Если дорогой форумчанин говорит(!), что Smarty(мой любимый поросенок) - говно и прочее... Так пусть обоснует, а то "темная" знаетели...
Я обосновал. Универсализация была куплена дорогой ценой — процессорным временем. Хотя, кому то кажется не такой уж и большой...
хм, вопрос в том, а нафиг такая универсализация? Помоему универслаьней некуда это шабонизатор (класс) в несколько простеньких маленьких функций + темплейты с PHP вставками - проще, понятнее, НААААМНОГО гибчё, а отличие лишь в том, как написаны шалбоны - PHP вставками или этими жуткими Smarty конструкциями (особенно после того, как мне в шаблоне как-то понадобилась рекурсия, которую smarty ну никак не мог реализовать, пришлось делать чистым PHP кодом прямо в шаблоне ) P.S. Для любителей смарти - скажите, ЗАЧЕМ мне в цикле в большинстве случаем всякие там cycle_id.first/last/current и.т.д.? Нужно в 2-3% случаев. Экономиться не тока память с PHP вставками, но и скорость больше + кеширорование PHP кода ещё срабатывает на шаблоны если стоит XCache/APC/eAccelerator/Zend Platform - fucking faster a lot!
Давайте не будем спорить хорош Smarty или плох. Все равно одним он нравится, другим нет и каждый останется при своем мнении и никто не сможет переубедить другого в обратном.