Точный мониторинг автотранспорта. Мониторинг автотранспорта gps навигация.

Глава 12 учебника по PHP. Шаблоны

обеспечивает стопроцентное разделение уровней программирования и дизайна. Полный код класса template приведен в листинге 12.7.

Листинг 12.7. Полный код класса template

class template {

VAR $files = array( );

VAR $variables = array( );

VAR $opening_escape = '{';

VAR $closing_escape = '}' ;

// Функция: register_file( )

// Назначение: сохранение в массиве содержимого файла.

// определяемого идентификатором $file_id

function register_file($file_id. $file_name) {

// Открыть $file_name для чтения или завершить программу

// с выдачей сообщения об ошибке.

$fh = fopen($file_name, "r") or die("Couldn't open $file_name!");

// Прочитать все содержимое файла $file_name в переменную.

$file_contents = fread($fh, filesize($file_name));

// Присвоить содержимое элементу массива

// с ключом $file_id. $this->files[$file_id] = $file_contents;

// Работа с файлом завершена, закрыть его.

fclose($fh):

} // Функция: register_variables( )

// Назначение: сохранение переменных, переданных

// в параметре $variable_name. в массиве с ключом $file_id.

function register_variables($file_id, $variable_name) {

// Попытаться создать массив.

// содержащий переданные имена переменных

$input_variables = explode(".", $vahable_name);

// Перебрать имена переменных

while (list(, $value) = each($input_variables)) :

// Присвоить значение очередному элементу массива $this->variables $this->variables[$file_id][] = $value:

endwhile;

} // Функция: file_parser( )

// Назначение: замена всех зарегистрированных переменных

// в файле с идентификатором $file_id

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) ) :

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 все