register_function()

register_function() -- 动态注册模板函数插件

描述

void register_function ( string name, mixed impl [, bool cacheable [, mixed cache_attrs]])

    传递入模板函数名,后面是实现它的PHP函数。

    PHP回调函数可以是:

    大多数情况下,cache_attrs可以被忽略。其正确用法参见控制插件输出的可缓存性

例子13-1. register_function()

<?php
$smarty
->register_function('date_now''print_current_date');

function 
print_current_date($params, &$smarty)
{
  if(empty(
$params['format'])) {
    
$format "%b %e, %Y";
  } else {
    
$format $params['format'];
  }
  return 
strftime($format,time());
}
?>

    而模板为

{date_now}

{* 或者用另一种格式 *}
{date_now format="%Y/%m/%d"}

    参见unregister_function()以及模板函数一节。