wmsin  3 Июля 2009 22:21:44

PHP → Smarty

Давно на просторах Рунета обсуждается тема шаблонизаторов. Кто-то говорит, что лучше самому написать, а кто-то - использовать уже известные разработки.

Я хочу поднять эту тему снова и рассказать немного о таком шаблонизаторе как Smarty.

Со Smarty я знаком не очень давно (месяца 4), но могу сказать, что вещь очень удобная, для больших проектов типа CMS вобщем-то даже наверное незаменимая. Когда пишешь CMS неохота прибегать к инклюдам php-кода в шаблоны, а без шаблонов в CMS практически никуда. Иначе как сменить быстренько дизайн сайта? Вот поэтому я и решил поглядеть что на просторах инета для этой цели завалялось. И нашел Smarty :). По внедрению в php-код я ничего легче не видел. Да и по простоте создания шаблонов тоже. К тому же данный шаблонизатор имеет встроенные логические структуры, циклы и еще многое другое. Все шаблоны автоматически компилируются в php-скрипты, т.е. создается некоторый кэш, что благоприятно влияет на скорость работы веб-приложения.

Вот небольшой пример:

 

{if $name eq 'Fred'}
	Welcome Sir.
{elseif $name eq 'Wilma'}
    Welcome Ma'am.
{else}
    Welcome, whatever you are.
{/if}

 

Остается только один недостаток, код данного чуда уж больно много весит, но за удовольствие надо платить :).

Я очень доволен этим шаблонизатором и Вам советую попробовать.

Ссылка на сайт Smarty - http://smarty.net. Есть документация на русском языке - ссылка

  • Digg it!
  • Delicious
  • +МоёМесто.ru
  • Добавить страницу к Мистеру Вонгу
  • Добавить страницу к Мистеру Вонгу

Комментарии КОММЕНТАРИИ (1)

 9 Июля 2009 09:01:44 |  # 

да, работать со smarty приятно. Все что надо есть, помимо четкого разделения логики работы и отображения страницы, возможна еще так же "безболезненная" и быстрая смена дизайна. Но хочу отметить что чаще всего крупные CMS пишутся на основе фреймворков, которые реализуют MVC, и View какраз представлена в виде своего, фреймворкового шаблонизатора. Хотя никто конечно не мешает использовать Smarty в паре с фреймворком, тут уже на любителя.

Зарегистрируйтесь или выполните Вход для того чтобы оставлять комментарии