Тема: шаблонизаторы в PHP

Как вы относитесь к шаблонизаторам ?
какие предпочитаете ? почему выбор пал именно на этот, а не на другой ?

интересны различные мнения smile

Re: шаблонизаторы в PHP

самый лучший шаблонизатор на php - это php.

Это шаблон на пхп.
Значение параметра 'a' равно <?= $a ?>.
Экранируем html код в параметре 'b': <?= htmlspecialchars($b) ?>.
Помещаем свой мега-компонент, генерирующий какую-нибудь форму с использованием заданных параметров: <?= draw_my_form($my_form_params) ?>.
Используем условный оператор: <?php if ($something): ?>something<?php else: ?>other<?php endif ?>.
Цикл foreach: 
<?php foreach ($array as $i): ?>
i=<?=$i?>
<?php endforeach ?>

Цикл for:
<?php for ($i = 0; $i < 10; $i++): ?>
array[<?=$i?>]=<?=$array[$i]?>
<?php endfor ?>

Подключаем подшаблон: <?php include("subtemplate.php"); ?>

<?php 
/* тут можно разместить любой код на пхп, но, если придерживаться правил хорошего тона,
 * то в большинстве случаев лучше ограничиться вышеприведенными конструкциями,
 * вынеся остальной код в 'настоящие' пхп файлы, которые подготавливают параметры
 * для шаблона, а затем подключают этот 'шаблон' с помощью include.
 */
?>

Я давно не писал на пхп, поэтому за корректность синтаксиса не ручаюсь. В старые добрые времена я даже создал специальный класс-обертку на 100 строк, который предоставлял базовый интерфейс, аналогичный smarty , а внутри себя автоматически занимался менеджментом параметров и подключением нужных 'шаблонов', написанных по вышеуказанному принципу.

3

Re: шаблонизаторы в PHP

Прекрасное болото , не будь ко мне жестоко smile

Re: шаблонизаторы в PHP

Согласен с valyala, обожаю PHP как шаблонизатор, тихонько ругаюсь в пакетик от Smarty и проч.

Re: шаблонизаторы в PHP

Во многие шаблонизаторы уже заложена определенная архитектура (в частности MVC) и в этом (если архитектура "правильная") есть определенный плюс. С другой стороны если у программиста есть навыки использования шаблонов проектирования и он пишет код думая об архитектуре, то, соглашусь, PHP - это уже шаблонизатор smile и ничего больше не нужно

6

Re: шаблонизаторы в PHP

Smarty.
PHP имхо нельзя, всегда есть большой шанс что шаблон перерастет свои задачи. Либо из-за своей лени/спешки, либо из-за чьей-то неграмотности.
На смарти поначалу ругался, потом правда понял что сам дурак, не то и не там пытался делать. Правильный шаблонизатор учит разделять и властвовать.:D