PHP Smarty 模板 自定义插件
admin
2023-06-22 00:00:04
0

插件

是按需载入的。当特定的修饰器,函数,资源等被调用的时候插件才会被载入。

插件目录变量

可以是一个路径的字符串或者是包含多个路径的数组。

安装插件的方法

是直接把插件文件放置在这些目录下,Smarty会自动按需使用。

  1. 设定插件目录(新建一个myplugins文件夹)

D:\wamp\www\test\smarty\libs\plugins\

D:\wamp\www\test\smarty\libs\myplugins\

//定义根目录
define('ROOT', str_replace("\\", "/",dirname(__FILE__))."/");
//注意添加一个插件,要把系统默认设置的路径加入 否则不能使用默认系统的插件
$smarty->setPluginsDir(array(
    ROOT."/libs/plugins/",//系统默认设置的路径
    ROOT."/libs/myplugins/",//自定义的
));

 2.定义插件函数

setPlugsDir();
 * 2.文件命名要有规则,才能通过文件名确定这个文件  modifier.函数名.php
 * 3.函数名要有规则,才能找到这个文件中的这个函数
 * 4.参数要有规则 第一个必须是要处理的变量 第二个以后才是要使用的参数
 */
        function smarty_modifier_mystyle($str,$size="3",$color="pink"){
                        return "{$str}";
        }

3.模板调用插件(修饰器)

<{$sex|mystyle:6:red}>

4.浏览器输出

male x

附上php页面代码

left_delimiter="<{";
$smarty->right_delimiter="}>";
//设置为false 定界符号左右可以有空格
$smarty->auto_literal = false;

//添加一个插件的目录
//$smarty->setPluginsDir(ROOT."/libs/myplugins/");

//注意添加一个插件,要把系统默认设置的路径加入 否则不能使用默认系统的插件
$smarty->setPluginsDir(array(
    ROOT."/libs/plugins/",//系统默认设置的路径
    ROOT."/libs/myplugins/",//自定义的
));
//获取插件的目录
var_dump($smarty->getPluginsDir());
//变量赋值
$smarty->assign('sex','male x');
//变量输出
$smarty->display('hello.tpl');
?>


相关内容

热门资讯

商务部:对日相关出口管制措施完... 在今天召开的商务部例行新闻发布会上,新闻发言人介绍,近期,中方将20家日本的相关实体列入管控名单,将...
广州“番禺大桥轿车追尾浇花车致... 澎湃新闻记者 吕新文广州市番禺区应急管理局5月27日公布《番禺区“12·17”一般道路交通事故调查报...
南方多地持续开展防汛救援 连日来,南方多地遭遇持续暴雨,当地迅速响应,全力开展预警监测,加快防汛排涝、应急救援等工作。重庆永川...
国防部回应菲方涉南海言论:无惧... 5月28日下午,国防部举行例行记者会,国防部新闻发言人蒋斌大校答记者问。记者:据报道,菲律宾武装部队...
整车多个零件被拆?知名游戏联名... “本来是去打卡联名单车的,结果一看,车上的联名物料被扒了个干干净净。”联名单车上的物料近日,滴滴青桔...
郑州一市民应聘货车司机,被诱导... “承诺月薪1万多,结果没挣钱,反而背上了贷款,这车买得太冤了!”5月24日,郑州市民徐先生反映,他去...
聚焦新型毒品等热点问题 最高检... 最高人民检察院今天(28日)发布10件未成年人权益保护和犯罪预防治理典型案例。这批案例聚焦新型毒品、...
荷兰军用直升机在南海遭中国军队... 5月28日下午,国防部举行例行记者会。国防部新闻发言人蒋斌大校就“荷兰直升机侵闯中国西沙群岛领空”等...
一日售罄,首批商业不动产REI... 【大河财立方 记者 孙凯杰】5月25日、27日,首批4只商业不动产公募REITs相继面向公众投资者发...
五位民营企业家亮相国新办,两位... 【大河财立方 记者 程帅星 王宁宁 北京报道】 5月28日,国务院新闻办公室举行“新征程上的奋斗者”...