多维数组,键0

时间:2014-03-12 18:13:39

标签: php arrays key

我有一个像:

这样的数组
 $a = array(array('Hello','abc'), 'd');
 var_dump($a);

    array (size=2)
  0 => 
    array (size=2)
      'title' => string 'Hello' (length=40)
      'class' => string 'abc' (length=3)
  1 => string 'd' (length=6)

var_dump($a[0]);
 array (size=2)
          'title' => string 'Hello' (length=40)
          'class' => string 'abc' (length=3)

为什么$ a [0]不为空?任何人都可以指出这一点吗?

//修改

我已使用此代码测试了密钥0:

If(empty($a[0]))
{
    // Do A
}
else
{
    // Do B
}

为什么返回Do B?

2 个答案:

答案 0 :(得分:3)

此数组$a = array(array('Hello','abc'), 'd');相当于:

 $a = array(0 => array(0 => 'Hello', 1 => 'abc'), 1 => 'd');

PHP将替换这些密钥。

答案 1 :(得分:0)

因为它指的是非空数组,在你的情况下是array('Hello','abc')并且根据PHP empty函数描述的手册: “确定变量是否被视为空。如果变量不存在或者其值等于FALSE,则变量被视为空。如果变量不存在,则empty()不会生成警告。”它将返回false