我有一个像:
这样的数组 $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?
答案 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
。