数组(0)与数组()的不同之处

yre*_*uta 1 php arrays

$variable = array(0);

$variable = array();
Run Code Online (Sandbox Code Playgroud)

他们有什么不同?

med*_*iev 9

第一个填充数字为0的数组,后者是一个空数组.


Pau*_*xon 7

第一个包含单个元素,整数为零.您可能想象的参数不是"大小初始值设定项".您可以通过对它们使用var_dump来看到这一点:

$foo = array(0);
var_dump($foo);

$bar = array();
var_dump($bar);
Run Code Online (Sandbox Code Playgroud)

这输出

array(1) {
  [0]=>
  int(0)
}
array(0) {
}
Run Code Online (Sandbox Code Playgroud)