您好,我使用 PHP 已有几年了,
这些是我知道的在 PHP 中声明数组的方法
$arr = array();
$arr = array(1,2);
$arr[0] = 1;
$arr[] = 1;
在一个示例中,我看到了这种语法并运行了代码,它是有效的:
$a{0} = "value";
但是下面的代码没有运行:
$a{} = "value";
它给出了:
Parse error: syntax error, unexpected '}'
这个怎么解释?
最佳答案
Both square brackets and curly braces can be used interchangeably for accessing array elements (e.g. $array[42] and $array{42} will both do the same thing ).
{ }
不仅用于访问,您甚至可以将元素附加到数组,前提是您传递了键!
$arr{34} = 'some data'; // <--- Valid
输出:
Array
(
[34] => some data
)
但是
$arr{} = 'some data';// <--- This is not a valid and it throws an error.
{ }
和 [ ]
之间的唯一区别是您需要为前者传递 key 。否则,它会抛出一个错误:PHP Parse error: syntax error, unexpected '}'
。
关于php - 谁能用 PHP -> $a{0} = "value"解释这个数组声明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22190847/