[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Функция разбора шаблона из урока
darkavenger
несколько непонятно с тем, какие действия происходят в функции разбора шаблона.


<?php
/**
* Функция чтения шаблонов
*/

function getTpl($tpl)
{
if(file_exists(IRB_ROOT .'/skins/tpl/'. $tpl .'.tpl'))
return file_get_contents(IRB_ROOT .'/skins/tpl/'. $tpl .'.tpl');
else
die('The template <b>'. $tpl .'.tpl</b> is absent in the specification');
}

/**
* Функция разбора шаблона
*/

function parseTpl($cont, $data = '')
{
if(is_array($data))
{

extract($data, EXTR_PREFIX_ALL, 'tpl');

ob_start();
eval('?>'. $cont .'<?php ');
$cont = ob_get_contents();
ob_end_clean();
}
return $cont;
}


а тут модель

<?php

$res = mysqlQuery("SELECT DATE_FORMAT(`date`,'%d-%m-%Y') AS `date`, `title`,
SUBSTRING_INDEX(`text`,' ', 20) AS `text`
FROM `"
. IRB_DBPREFIX . $table ."`
WHERE `public` = 1
ORDER BY `id` DESC "

);

$rows = '';
$tpl = getTpl('news/rows');
while($row = mysqli_fetch_assoc($res))
{
$row['title'] = htmlspecialchars($row['title']);
$row['text'] = nl2br(htmlspecialchars($row['text']));
$rows .= parseTpl($tpl, $row);
}

меня больше интересует вот что. В модели разбирается шаблон через функцию parseTpl, туда идут параметры $tpl и массив $row. А уже в самой функции приходящие параметры какие-то $cont, $data = ''. Что они означают?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.