ThinkPHP 算术运算符
ThinkPHP 模型及操作中使用算术运算符与原生 PHP
一致,主要的困扰是在模板中使用算术运算符有些需要注意的地方。
首先要明确的是,ThinkPHP
内置模板引擎支持在模板中使用算术运算符(+、-、*、/ 和 %),例子:
- public function index(){
- $x = 1;
- $y = 2;
- $z = 3;
- $this->assign('x', $x);
- $this->assign('y', $y);
- $this->assign('z', $z);
- }
在对应的模板中输出对它们做数学运算后的结果:
{$x+$y}
{$x+$y*$z}
输出的结果分别是
3 和 7。
注意
在模板中使用数学运算符时,不能使用点号语法和常规的函数用法。所以如果是查询结果等,尽量使用数组语法,如:
- // 错误用法
- {$user.score+10}
- // 正确用法
- {$user['score']+10}
- {$user['score']*$user['level']}
- // 错误用法
- {$user['score']|myFun*10}
- // 正确用法
- {$user['score']+myFun($user['level'])}
上面例子中 myFun 是一个自定义函数或者 PHP 内置函数,详细参见《ThinkPHP
在模板中使用函数》。
参考阅读
PHP 运算符
ThinkPHP 模板变量输出
ThinkPHP 在模板中使用函数