实际项目中,我们经常需要标签变量加减运算的操作。但是,在ThinkPHP中,并不支持模板变量直接运算的操作。
幸运的是,它提供了自定义函数的方法,我们可以利用自定义函数解决:
ThinkPHP模板自定义函数语法如下:
格式:{:function(…)} (参考官方帮助文档:)
利用这个,我们来试做加法和减法。
一、在ThinkPHP中定义函数。在项目的common文件夹下新建common.php文件(这样系统会自动加载)。定义两个函数:
/** * 相加,供模板使用 * @param <type> $a * @param <type> $b */ function template_add($a,$b){ echo(intval($a)+intval($b)); } /** * 相减,供模板使用 * @param <type> $a * @param <type> $b */ function template_substract($a,$b){ echo(intval($a)-intval($b)); }
二、在模板中使用函数:
复制代码 代码如下:
{:template_add($var1,$var2)}
即可显出变量var1于var2的和。
需要注意的是:如果变量是数组,要这样显示:
复制代码 代码如下:
{:template_add($var[var1],$var[var2])}
而不是我们通常是用点语法。