我有一个问题,如果我确定数组为空,但true
传递了它,我如何为返回false
或isset()
的函数设置条件。
$arr = array();
if (isset($arr)) {
return true;
} else {
return false;
}
在此表单中,返回bool(true)
,var_dump
显示array (0) {}
。
答案 0 :(得分:17)
如果它是一个数组,你可以只使用if
或只使用逻辑表达式。空数组的计算结果为FALSE
,任何其他数组的结果为TRUE
(Demo):
$arr = array();
echo "The array is ", $arr ? 'full' : 'empty', ".\n";
答案 1 :(得分:9)
使用PHP的empty()
功能。如果数组中没有元素,则返回true
。
答案 2 :(得分:6)
使用empty()
检查空数组。
if (empty($arr)) {
// it's empty
} else {
// it's not empty
}
答案 3 :(得分:2)
您还可以通过count
函数检查数组中的元素数量:
$arr = array();
if (count($arr) == 0) {
echo "The array is empty!\n";
} else {
echo "The array is not empty! It has " . count($arr) . " elements!\n";
}
答案 4 :(得分:0)
将空属性用作
if (!empty($arr)) {
//do what u want if its not empty
} else {
//do what if its empty
}