- 實際項目中,我們經常需要標簽變量加減運算的操作。但是,在ThinkPHP中,并不支持模板變量直接運算的操作。
- 幸運的是,它提供了自定義函數的方法,我們可以利用自定義函數解決:
- ThinkPHP模板自定義函數語法如下:
- 格式:{:function(…)}?(參考官方幫助文檔:http://thinkphp.cn/Manual/196)
- 利用這個,我們來試做加法和減法。
- 一、在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])}
- 而不是我們通常是用點語法。
- 希望本文所述對大家基于ThinkPHP的php程序設計有所幫助。