Обработка файла

После того как файлы и переменные будут зарегистрированы в системе шаблонов, можно переходить к обработке зарегистрированных файлов и замене всех ссылок на переменные с соответствующими значениями.

Метод file_parser( ):

function file_parser($file_id) {

// Сколько переменных зарегистрировано для данного файла?

$varcount = count($this->variables[$file_id]);

$keys = array_keys($this->files) // Сколько файлов зарегистрировано?

// Если файл $file_id существует в массиве $this->files

// и с ним связаны зарегистрированные переменные

If ( (in_array($file_id. $keys)) && ($varcount > 0))

{ // Сбросить $x $x = 0 Пока остаются переменные для обработки...

while ($x < sizeof($this->variables[$file_id]))

{ // Получить имя очередной переменной $string = $this->variables[$file_id][$x];

// Получить значение переменной. Обратите внимание:

// для получения значения используется конструкция $$.

// Полученное значение подставляется в файл вместо

// указанного имени переменной.GLOBAL $$string:

// Построить точный текст замены вместе с ограничителями

$needle = $this->opening_escape.$string.$this->closing_escape;

// Выполнить замену.

$this->files[$file_id] = str_replace( $needle.$$string.$this->files[$file_id]); $x++;

}

}

}

Сначала проверяем, присутствует ли указанное имя файла в массиве $this->files. Если файл был зарегистрирован, мы также проверяем, были ли для него зарегистрированы переменные, и если были - значения этих переменных подставляются в содержимое $file_id.

Пример.

// Включить класс шаблона include("template. class") ;

$page_title = "Приветствуем Вас на нашей домашней страничке!";

$bg_color = "white"; $user_name = "Chef Jacques";

$template = new template; // Создать новый экземпляр класса

// Зарегистрировать файл "homepage.HTML",присвоив ему псевдоним "home"

$template->register_file( "home", "homepage.HTML");

// Зарегистрировать несолько переменных

$template->register_variables("home", "page_titie, bg_color, user_name");

$template->file_parser("home");

Поскольку переменные page_title, bg_color и user_name были зарегистрированы, значения каждой переменной (присвоенные в начале сценария) подставляются в страницу homepage.HTML, хранящуюся в массиве files (атрибуте объекта-шаблона). На этом предварительная подготовка завершается, остается лишь вывести полученный шаблон в браузере.








Дата добавления: 2015-04-15; просмотров: 606;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.004 сек.