plugins文件夹下自定义函数:
function smarty_block_calculation($arr,$content,&$smart){ $result=''; switch ($arr['operator']){ case '+': $result = $arr['fnum'] + $arr['lnum']; break; case '-': $result = $arr['fnum'] - $arr['lnum']; break; case '/': $result = $arr['fnum'] / $arr['lnum']; break; case '*': $result = $arr['fnum'] * $arr['lnum']; break; } return $result; }
<html> <head> <meta http-equiv = "Content-type" Content = "text/html;charset=utf-8" /> </head> <body> <{calculation fnum=3 lnum=4 operator="*"}> <{/calculation}> </body> </html>
一个12啊 为什么执行2次了 ,谁能告诉我一下 ,谢谢了。
自定义函数少了一个参数&$repeat,在函数开始时设置$repeat=false就可以了