Авторизация
Задай мне вопрос
Голосования
| Про шаблоны |
|
| Written by xternalx | |||
| Wednesday, 30 June 2010 11:48 | |||
|
В настоящее время я работаю над одним довольно серьезным проектом. Проект разрабатывается на php, соответственно, работает в браузере. Для отображения данных можно генерировать вывод прямо из php, но это получается не очень красиво как с точки зрения оформления кода, так и с точки зрения гибкости. Что если мне нужно будет поменять стиль отображения какого либо элемента web страницы? Тут на помщь и приходят шаблонизаторы ;)
Но потом, когда я понял что простой заменой уже не обойтись, нужны были какие то условия для того, чтобы ключевые слова менялись в зависимости от этих самых условий то на одно, то на другое. Работа уже была сделана, менять шаблонизатор желания не было, и я решил пойти на небольшую хитрость - ввел в шаблонизатор триггеры. Суть триггеров такова: Перед выполнением шаблонизатором функции по обработке начального шаблона, т.е. замене ключевых слов на их значения, в шаблонизатор через специально определенную функцию добавляюся обработчики этих самых ключевых полей. Обработчики - обычные функции, этим функциям в качестве параметров передается название ключевого слова, и значение, на которое это слово в шаблоне нужно будет заменить. В процессе обработки шаблонизатор пробегает по всем ключевым словам, и проверяет, имеются ли для них обработчики, если есть - "скармливает" эти данные сначала обработчику, а в самом шаблоне ключевое слово заменяет на данные, которые уже пришли из обработчика. Таким образом, шаблоны получаются совершенно чистыми от php кода, а вся работа по выводу данных осуществляется предельно просто. Если кому интересно, могу выложить класс своего шаблонизатора
|
