** PHP 5.6 中的运算符和 pow 函数

** operator and pow function in PHP 5.6

我有一个关于 PHP 5.6 中出现的 ** 运算符的问题。 据我了解,它用于求幂。 但是,如果我们要增加一个负数:

var_dump(-2 ** 2);
var_dump(pow(-2, 2));

然后在第一个例子中结果是-4,在第二个例子中是4。 没关系?或者此运算符的行为与 pow() 函数不同?

它必须优先,因为 var_dump((-2) ** 2); 产生 4

所以-2 ** 22进行2次方,然后使结果4为负。

Operator Precedence