正如我最近在PHP中学到的$myArray[$index]
相当于$myArray{$index}
。
这在PHP docs上提到过。我也在这里找到了一些小讨论:PHP curly braces in array notation。
PHP-FIG不包含有关哪种方式更可取的任何建议。
所以,我的问题是 - 这只是一个品味问题,或者可能是使用一种或另一种语法的客观原因?
答案 0 :(得分:13)
"数组元素的方括号符号" 将更加统一和可接受。
"卷曲括号符号"在处理数组元素的访问时,它将在表达式中工作,但不在变量插值中工作。
请考虑以下示例:
$myArray = [1,2];
$index = 1;
echo "value at index $index is $myArray[$index]"; // outputs "value at index 1 is 2"
echo "value at index $index is $myArray{$index}"; // will throw "Notice: Array to string conversion"
var_dump($myArray{$index}); // outputs "int(2)"