在http://php.net/manual/en/language.operators.precedence.php网页上,第二高优先级包含一个名为[
的左结合运算符。
我不明白这一点。它是$myArray[23]
中用于访问/修改数组条目的[
吗?我无法想象有任何代码片段需要知道它在其他运算符中的“优先级”,或者[
的“结合性”在哪里有用。
发布于 2016-01-09 23:24:11
它只是意味着数组变量(左关联性- $first)将在数组键(右关联性- $second)之前被计算
$first[$second]
当数组具有多个维度时,这很有意义
$first[$second][$third][$fourth]
发布于 2016-01-09 22:56:45
在PHP中,你可以用[]
初始化空数组,为了知道如何定义一个数组,下一个字符的优先级决定了如何初始化该数组。
因为数组是语法结构的一部分,所以它是在任何数学运算之前完成的,因此它比其他计算运算符具有更高的优先级。
var_dump([5, 6, 7] + [1, 2, 3, 4]); # 5674 - The array's must be known before applying the operator
然而,老实说,我并不真的理解这个问题。在大多数编程语言中,[
和]
都与数组相关联,数组是基本语法的一部分,始终具有高优先级(如果不是最高优先级)
https://stackoverflow.com/questions/34694813
复制相似问题