Мой Template Engine
Вот main.php
<?
define("TPL_DIR", "templates/");
include_once('TemplateEngine.php');
$data = array("title"=>"",
"text"=>"Хулы не будет, щастья будет - мамка не машина");
$tpl = new TemplateEngine(TPL_DIR);
$tpl->load("html.html", &$data);
$tpl->display();
?>
TemplateEngine в Manifesto и RocketTE
Про Template Engine в Rocket (т.н. RocketTE) читать
здесь.
О синтаксисе разметки шаблонов в Rockette см.
здесь (
ссылка, которая в тексте про ракету, не работает).
Собственно, откуда он берется:
Первым делом создается объект
$rh=&new NpjRequestHandler();
При его конструировании последовательно создаются объекты-члены $rh, с помощью которых $rh делегируются свойства и методы следующих классов (по порядку создания):
RequestHandler --> ListSimple --> ListCurrent --> NpjModule --> Module --> TemplateEngine
Сам же движок шаблонов (он же фабрика или нет?) помещается в $rh->template_engine с помощью метода
Module::GenerateTemplateEngine($te_profile), который возвращает на него ссылку.
Есть и другая точка зрения!
в конструкторе для
$rh одним из последних создается объект
$rh->tpl = &new TemplateEngine(&$this);
Ну и где тут правда? !!(зел) Что ли два движка шаблонов? Один для конкретного модуля, другой для $rh, так что ли? !!
В PHP4, на котором написан НПЖ, нет ключевых слов public и private, которые появились только в PHP5. Поэтому выделить в данном классе интерфейсную часть довольно затруднительно, но подозреваю, что «публичных» методов и свойств из приводимых ниже – меньшинство. Кстати, спасибо авторам за документацию.
конструктор: TemplateEngine(&$config, $domain=array())