Что такое Smarty? Часть 1
При написании использовались материалы руководства по Smarty от New Digital Group
Smarty – это компилирующий обработчик шаблонов. Если говорить простым языком, то Smarty позволяет добиться отделения прикладной логики и данных от представления, тоесть программного кода от оформления. Это очень удобно, особенно в тех случаях, когда программист и верстальщик шаблона – разные люди.
При разработке сайта, например, если программист захочет внести какие-то изменения в логику, то эти изменения никак не затронут шаблон. Также, если верстальщик захочет внести изменения в шаблон, то это никак не повлияет на логику приложения – содержание будет передаваться в шаблон все тем же образом.
Как вы уже поняли, предназначение Smarty – отделение логики приложения от представления.
Кстати, это не означает что шаблоны не могут содержать логику. Могут, но только если это действительно необходимо для корректной работы приложения.
Одна из уникальных возможностей Smarty – компилирование шаблонов. Smarty читает файлы шаблонов и создает на их основе PHP код. Код создается один раз и потом только выполняется. Если шаблон изменяется, то происходит перекопилирование.
Вам уже не терпится увидеть его в действии? Надеюсь, что это так и в довесок приведу некоторые особенности Smarty:
- Быстрота
- Эффективность
- Никакой лишней обработки шаблонов – они компилируются только один раз и перекомпилируются при изменениях в шаблоне
- Вы можете легко создавать собственные функции и переменные
- Настраиваемые разделители тегов шаблона, то есть вы можете использовать {$variable}, {{$variable}}, <!–$variable–> и т.д.
- Конструкции {if}…{elseif}…{else}…{/if} передаются обработчику PHP, так что синтаксис {if…} может быть настолько простым или сложным, насколько вам удобно.
- Неограниченное вложение секций, условий и т.д.
- Возможность включения PHP кода прямо в шаблон, но обычно в этом не возмикает необходимости
- Встроенный механизм кэширования
- Произвольные источники шаблонов
- Компонентная архитектура
В следующей части мы рассмотрим установку Smarty.
Эта и многие другие статьи на http://tutorials-world.ru/