Я расскажу о своих шаблонах (из восьми строчек), которые придумал в 2003 году и с тех пор они меня не подводили и не требовали каких-либо улучшений.
Суть шаблонов – это принцип матрешки, когда маленькая матрёшка — это часть той что побольше.
На практике это выглядит так: мы указываем имя первого пхп-шаблона, внутри которого прописываем имя вышестоящего шаблона, который, в свою очередь, также может указать на своего пхп-родителя и т.д.
Физически это выглядит так. У меня в апаче настроен хост
http://start.local
с домашней директорией для браузеров
/home/start.local/www
, где лежит стартовый корневой файл
/home/start.local/www/index.php
, который содержит в себе всего одну строчку:
<?load::integration('main.tpl');?>
Этот текст надо читать так: класс load вызывает функцию (метод)
load::integration()
, в которую передает один параметр – строчку
'main.tpl'
.
Где, main.tpl – это имя файла первого пхп-шаблона, а функция
load::integration()
содержит механизм, который позволяет обрабатывать указанный шаблон. А конкретнее, он позволяет нам прописывать в шаблоне main.tpl, другой шаблон, например default.tpl, в который будет вложен результат выполнения mail.tpl. В свою очередь default.tpl, также может указать вышестоящий шаблон (как изображено на рисунке). Если же вышестоящих шаблонов не указано, то функция
load::integration()
остановит сборку шаблонов и отдаст общий результат выполнения всех шаблонов в браузер.
Далее я расскажу как все работает и дам ссылку скачать код.