我将此数组发送到我的视图
Array
(
[0] => stdClass Object
(
[emg_id] => 2
[fkit] => 1
[door] =>
)
)
我想计算有多少元素为空,NULL或'0'。
我尝试使用count
,但它总是返回'1',而不是计算所有元素,所以我稍后可以确定哪些符合上述条件。
任何想法我做错了什么?
答案 0 :(得分:4)
// number of "null" elements
echo count(array_filter((array) $array[0], 'is_null'));
还有一些其他is_*()
- 函数内置,可以帮助您计算字符串的数量(等等)。
要测试,如果元素是(例如)0
,我建议使用匿名函数
echo count(array_filter((array) $array[0], function ($item) {
return $item === 0;
}));
其他情况类似。
答案 1 :(得分:1)
循环遍历并计算。
function loopMe($array, $value) {
$num = 0;
foreach($array as $key=>$val) {
if($val == $value)
$num++;
}
return $num;
}
$ar = array (
array (
"emg_id" => 2
"fkit" => 1
"door" => null));
$num = loopMe($ar[0], null);