Name
register_function
void register_function(string name,
mixed impl,
bool cacheable,
mixed cache_attrs);Используется для динамической регистрации плагинов функций шаблона. Передается наименование функции шаблона и имя функции, реализующей ее.
Функция обратного вызова PHP impl может быть
(a) строка, содержащая имя функции, или (b) массив вида
array(&$object, $method), где
&$object является ссылкой на
объект, а $method является строкой,
содержащей имя метода, или (c) массив в форме
array($class, $method), где
$class является именем класса, а
$method является методом этого
класса.
cacheable и cache_attrs
в большинстве случаев могут быть опущены. Смотрите Управление кэшированием результатов работы плагинов
для получения информации об их правильном использовании.
Example 13.22. register_function
$smarty->register_function("date_now", "print_current_date");
function print_current_date($params)
{
if(empty($params['format'])) {
$format = "%b %e, %Y";
} else {
$format = $params['format'];
return strftime($format,time());
}
}
// теперь вы можете использовать ее в Smarty чтобы вывести текущую дату: {date_now}
// или {date_now format="%Y/%m/%d"} чтобы задать формат.
?>