从数组中的COUNT中排除空值

时间:2012-03-20 14:50:26

标签: php

如何从数组中的计数中排除空值? 因为count在计数中总是包含空值!

4 个答案:

答案 0 :(得分:4)

function count_nonnull($a) {
    $total = 0;
    foreach ($a as $elt) {
        if (!is_null($elt)) {
            $total++;
        }
    }
    return $total;
}

答案 1 :(得分:3)

尝试使用foreach循环。

foreach($array as $index=>$value) {
    if($value === null) unset($array[$index]);
}
echo count($array);

或者如果您不想修改数组:

function myCount($arr)  {
    $count = 0;
    foreach($arr as $index=>$value) {
        if($value !== null) $count++;
    }
    return $count;    
}

echo myCount($array);

答案 2 :(得分:3)

count(array_filter($array, function($x) {return !is_null($x); })

答案 3 :(得分:0)

// 最简单的方法
回声计数(array_filter($ array)); instructions