调用语法:
{‘param1’|functionName:’param2’:’param3’}
对应函数:
echo functionName(‘param1’,’param2’,’param3’);
如果函数没有参数,param1 使用空的字符串代替,如 “”
对于数组类型的数据可能报错,此时加一个@
比如:要对一个数组调用count方法求出数组的长度,就可以这样调用{array|@count}
语法2:
{变量|调节器1|调节器2|调节器N}
{变量|调节器1:参数1:参数2|调节器2:参数1:参数2}
1,Smarty变量调节器概述
变量修饰器可以用于格式化变量
使用修饰器,需要在变量的后面加上|(竖线)并且跟着修饰器名称
修饰器可能还会有附加的参数以达到效果
参数会跟着修饰器名称,用:(冒号)分开
同时,默认全部PHP函数都可以作为修饰器来使用,而且修饰器可以被联合使用
修饰器可以作用域任何类型的变量,数组或对象
语法格式
{变量|调节器1|调节器2|调节器N}
{变量|调节器1:参数1:参数2|调节器2:参数1:参数2}
2,Smarty常用变量调节器
调节器 含义 PHP函数 示例演示
upper 将变量值转成大写字母 strtoupper() {$title|upper}
lower 小写
capitalize 每个单词的第一个字母大写 ucwords() {$title}capitalize}
nl2br 将变量中\n回车 nlb2r() {$title|nl2br}
全部转换成HTML的<br>
replace 对变量进行简单的替换 str_replace() {$title|replace:'a':'b'}
date_format 将日期和时间格式化成strftime() strftime() {$title|date_format:%Y-%m-%d}
truncate 截取字符串到指定长度,默认长度是80 substr() {$title|truncate:80:'..'}
高级用法:
- 编写后端接口,前端通过 smarty 动态调用接口类中的方法获得返回值
- 也就是使用同步替代 ajax。
本篇完,还有疑问?留下评论吧