【发布时间】:2017-09-13 23:42:34
【问题描述】:
我有一个这样的数组:
json_encode($a) = {"p123_04":[]}
如何判断是否为空?
count($a) = int(1)
empty((array)$a) = false
我还应该用什么来检查 [] 是否为空?
【问题讨论】:
-
你建议的两件事还不够吗?
-
你的数组不是空的,它有一个键和一个空值。
我有一个这样的数组:
json_encode($a) = {"p123_04":[]}
如何判断是否为空?
count($a) = int(1)
empty((array)$a) = false
我还应该用什么来检查 [] 是否为空?
【问题讨论】:
你可以这样检查
if(count($array) > 0)
{
echo 'Error';
}
else
{
echo 'No Error';
}
【讨论】:
empty((array)$a = false
足以检查数组是否为空
【讨论】:
@MaoStream 就像您必须使用父键检查 empty() 一样:
<?php
$a = json_decode('{"p123_04":[]}', true);
if(!empty($a["p123_04"])){
echo "not empty";
}
else{
echo "empty";
}
【讨论】:
好吧,如果你想绝对确定它是一个 empty array,也许你可以选择:
if (is_array($array) && ($array === [])){
// The array is empty
}
不过可能有点矫枉过正,如果你确定是数组,可以去掉第一部分
【讨论】: