官方文档页面上的PHP Operator Precedence table中缺少对象间接运算符(->
)。页面底部的注释表明此类运算符的优先级必须最高。但是,以下代码显示这不是真的,并且注释错误:
class Foo {
public $i;
function __construct() { $this->i = 0; }
}
$foo = new Foo();
++$foo->i;
echo $foo->i;
输出:
1
那么,上述PHP运算符优先级表中对象间接运算符(->
)的确切位置是什么?
答案 0 :(得分:0)
->
运算符优先级高于++
,但低于new/clone
。通过我的测试,它高于cli中的[(array operator)
且低于[
Apatch httpd服务器,所以我认为这是一个bug。