ThinkPHP 模板中使用算术运算符

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 在模板中使用函数》。

posted @ 2012-02-19 20:22  BeyondMyself  阅读(1095)  评论(0编辑  收藏  举报