Встал вопрос об отделении HTML от PHP, шаблонизаторы типа Smarty считаю не приемлимыми т.к. они мало упрощают шаблон.
В Drupal и WordPress для вставки переменных используют PHP:
<?php print $asd; ?>
Все циклы и условия пишут с end синтаксисом (endif, endwhile):
<?php foreach ($profile as $field) : ?>
<p>
<?php if ($field->type != 'checkbox') : ?>
<strong><?php print $field->title; ?></strong><br />
<?php endif; ?>
<?php print $field->value; ?>
</p>
<?php endforeach; ?>
Почему используется такой формат? Почему print вместо echo и двоеточие в необязательном месте и почему только end синтаксис?
От куда это пошло и зачем нужно?
И как вообще лучше всего отделять HTML?
25 сентября 2009 в 17:00
Откуда пошло: разработчикам ударила вожжа под хвост изменить синтаксис. Думаю истинные причины вряд ли кто скажет.
А я вот наоборот считаю, что коли речь о полном отделение, то лучше пользовать самые простые шаблоны. Плюсы в этом, то что не надо изучать особенности синтаксиса, как в приведенном примере. Да кода будет, больше, а изменений одного шаблона недостаточно. Ну дык на то он и софт( а не хард), чтоб его менять.