smarty模板引擎_5-自定义变量调节器

来源:互联网 发布:maya2015软件补丁更新 编辑:程序博客网 时间:2024/05/01 19:32
自定义变量调节器

 两种方式:

第一种通过registerPlugin()方法将定义的函数注册到Smarty对象中,只能在当前模版中使用

function getExt($filename){ return strtolower(pathinfo($filename,PATHINFO_EXTENSION)); }$smarty->registerPlugin('modifier','ext','getExt');
modifier:注册为变量调节器

ext:变量调节器的名称

getExt:调用的函数取得文件后缀名

使用该变量调节器

<{$filename|ext}>
前面的$filename即为传入getExt()的第一个参数


function myFunc($content,$size,$color,$family,$weight){ $html = '<span style="font-size:'.$size.';color:'.$color.';font-family:'.$family.';font-weight:'.$weight.'">'.$content.'</span>'; return $html; }$smarty->registerPlugin('modifier','font','myFunc');
使用该变量调节器
<{$string4|font:'20px':'green':'Microsoft Yahei':'normal'}>


也可以直接将PHP系统函数注册成变量调节器插件

$smarty->registerPlugin('modifier', 'strShuffle', 'str_shuffle');
str_shuffle()为PHP系统自带的函数


第二种方式可以像系统默认的变量调节器一样,在Smarty库文件所在的插件目录plugins中定义一个文件扩展插件,无需注册即可使用。

插件命名规则:modifier.变量调节器名称.php

插件内方法命名规则:smarty_modifier_变量调节器名称(形参...){}

0 0
原创粉丝点击