php smarty 模板中默认是带了一些简单的变量处理函数的。基本上可以满足web开发中大部分的需求了,但在实际开发中总有些功能是这些基本函数满足不了的。比如模板默认函数就没有统计一个字符串字数的函数。对于这种除了开发一个smarty模板插件函数外,最简单的就是直接使用php函数了。另外我们的需求中也经常会碰到要在模板中对一个变量进行多次处理的情况,也就是说在模板中可能要对一个变量用多个函数进行处理。这些你都知道是怎么做的吗?下面我们就以两个示例做一下简单的说明吧。
(1)在smarty模板中使用php函数,这里假设需要计算一个数组的长度,如果长度大于6则进行循环显示,否则不做任何操作,则:
{if $array|@count gt 6}
{foreach from=$array item=arr}
......
{/foreach}
{/if}
(2)在smarty模板中对同一个变量使用多个函数,假设现在要对一个变量先进行字符定长截取,然后在把关键词进行替换以高亮显示,则:
{$str|truncate:30:'...'|replace:$keyword:"$keyword"}
ok,在 smarty 模板中使用php函数以及在smarty模板中对同一个变量使用多个函数就是这么简单。