What is Smarty?
Why use it?
Use Cases and Work Flow
Syntax Comparison
Template Inheritance
Best Practices
Crash Course
You may use the Smarty logo according to the trademark notice.
For sponsorship, advertising, news or other inquiries, contact us at:
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"} чтобы задать формат. ?>