smarty中变量调解器的作用:在模板中需要对PHP分配过来的变量在输出之前,对变量进行处理
注册变量调解器方式:$smarty->registerPlugin("modifier","demo", "test")
demo是调解器名称,test为该调解器的自定义的回调方法,第一个参数为要操作的变量对象、可以有多个参数
function test($var,$arg2,$arg3){}
在模板中{$var|demo:$arg2:$arg3}
还可以用注册插件的形式注册函数,函数名在模板中的使用类似html中的标签名,参数为属性
$smarty->registerPlugin("function","demo", "test")
<?php $smarty->registerPlugin("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"}