САМОУЧИТЕЛЬ PHP 4



         

Главный модуль шаблонизатора


Основной код шаблонизатора, который и выполняет всю работу, помещен в библиотеку Template.phl. Она содержит все функции, которые могут потребоваться в шаблонах и блочных страницах. Главная функция модуля— RunUrl() — "запускает" страницу, путь к которой (относительно корневого каталога сервера) передается в параметрах. Результат работы этой функции — содержимое блока Output, порожденного страницей.

В листинге 30.14 приводится полный код шаблонизатора с комментариями.

Листинг 30.14. Модуль шаблонизатора: Template.phl

<?

// Константы, задающие некоторые значения по умолчанию

define("DefGlue"," | ");             // символ склейки по умолчанию

define("Htaccess_Name",".htaccess"); // имя .htaccess-файла

// Имена "стандартных" блоков

define("BlkTemplate","template");   // шаблон страницы

define("BlkOutput","output");       // этот блок выводится в браузер

define("BlkDefGlue","defaultglue"); // символ для "склейки" по умолчанию

// Рабочие переменные

$GLOBALS["BLOCK"]=array();      // массив тел всех блоков

$GLOBALS["BLOCK_INC"]=array();  // аналог $INC библиотекаря

$GLOBALS["CURBLOCK_URL"]=false; // URL текущего обрабатываемого файла

$GLOBALS["bSingleLine"]=0;      // обрабатываемый файл — .htaccess?

// В следующем массиве перечислены имена функций-фильтров,

// которые будут вызваны для каждого блока, когда получено его

// содержимое. Вы, возможно, захотите добавить сюда и другие

// фильтры (например, исполняющие роль простейшего макропроцессора,

// заменяющего одни тэги на другие). Формат функций:

// void FilterFunc(string $BlkName, string &$Value, string $BlkUrl)

$GLOBALS["BLOCKFILTERS"]=array(

  "_FBlkTabs",

  "_FBlkGlue"

  //*** Здесь могут располагаться имена ваших функций-фильтров.

);

// Возвращает тело блока по его имени. Регистр символов не учитывается.




Содержание  Назад  Вперед