变量调节器 php,php学习笔记(三十七)smarty中的变量调节器使用

基本上smarty的内置调节器已经很丰富了,可以满足简单需求。应该了解一下后,再去查找或者添加新的调节器

init.smarty.php

define("ROOT", ".");

//解决问题:Warning: strftime() [function.strftime]:

date_default_timezone_set("Asia/Shanghai");

include ROOT."/libs/Smarty.class.php";

$tpl = new Smarty();

//smarty初始化

$tpl->template_dir=ROOT."/templates/";

$tpl->compile_dir=ROOT."/templates_c/";

//配置文件位置

$tpl->config_dir=ROOT."/configs/";

$tpl->left_delimiter="";

?>

mysmarty.php

/**

*

* 以下所有使用变量都要基于设定的前缀和后缀

* 变量调节器

* 想传递一个字符串的大写、截取、小写,那么就需要传递三个字符串

* 可以在模板的中使用|functionname来使用变量调节器;

* functionname第一个参数是$str,如何加入其他参数可以加上:来加入参数

*

*

* 两种方法设置

* 1.写在php中

* 2.在plugins文件夹中添加modifier.tochange.php

* 3.组合调节器

*

* 系统提供的变量调节器(看smarty的api)

*

* 可以自己百度已经经过验证的插件

*

* 也可以查找格式化插件

*

*

*/

//如果文件加载失败require会停止继续解析php;而include则会继续向下执行

require 'init.smarty.php';

$title="这是一个文字标题";

$str="I am a 23 Bay Boy!";

$tpl->assign("title",$title);

$tpl->assign("str",$str);

$tpl->assign("strC",$title);

//模板文件名可以随便定义:比如:mysmarty.tpl只有内容是html就可以了

$tpl->display("mysmarty.html");

?>

mysmarty.html

在smarty插件plugins文件夹中加入如下文件来进行自定义调节器的使用

modifier.tocut.php

function smarty_modifier_tocut($str,$star,$len){

$str=substr($str, $star,$len);

return $str;

}

modifier.tochange.php

function smarty_modifier_tochange($str,$mod){

switch ($mod){

case "lower":

$str=strtolower($str);

break;

case "upper":

$str=strtoupper($str);

break;

case "first":

$str=ucfirst($str);

break;

}

return $str;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值