如何使用php计算数组空值?

如何使用php计算数组空值?,php,arrays,Php,Arrays,如何计算值为空的数组数。 例如,我有一个数组结果: Array ( [0] => 'A', [1] => 'B', [2] => 'C', [3] => '', [4] => '', [5] => 'F', [6] => '') 下面是3个空数组值(索引3,4,6),因此如何获取空数组值的数量请尝试以下方法: <?php $count = 0

如何计算值为空的数组数。 例如,我有一个数组结果:

    Array (
       [0] => 'A',
       [1] => 'B',
       [2] => 'C',
       [3] => '',
       [4] => '',
       [5] => 'F',
       [6] => '')
下面是3个空数组值(索引3,4,6),因此如何获取空数组值的数量请尝试以下方法:

<?php
$count = 0;
for ($i =0; $i < length($array); $i++) {
  if ($array[$i] == '')
    $count++;
}
?>

试试这个:

<?php
$count = 0;
for ($i =0; $i < length($array); $i++) {
  if ($array[$i] == '')
    $count++;
}
?>

--或--

PHP手册:

--或--


PHP手册:

对于多维数组(以及平面数组),您可以使用

 $a =  Array (
   0 => 'A',
   1 => 'B',
   2 => 'C',
   3 => '',
   4 => '',
   5 => 'F',
   6 => '',
   7 => ['','']
  );

$total = 0;

array_walk_recursive($a, function($i) use (&$total){
 if($i === '') ++$total;
});

echo $total;
输出

5

可能最短的方法是:

echo count(array_intersect($a, ['']));
但它不适用于嵌套数组


对于多维阵列(以及平面阵列),您可以使用

 $a =  Array (
   0 => 'A',
   1 => 'B',
   2 => 'C',
   3 => '',
   4 => '',
   5 => 'F',
   6 => '',
   7 => ['','']
  );

$total = 0;

array_walk_recursive($a, function($i) use (&$total){
 if($i === '') ++$total;
});

echo $total;
输出

5

可能最短的方法是:

echo count(array_intersect($a, ['']));
但它不适用于嵌套数组


“试试这个”并不是一个好答案。您应该解释这是如何以及为什么解决他们的问题的。我建议阅读,“试试这个”并不是一个好的答案。你应该解释这是如何解决他们的问题的,以及为什么解决他们的问题。我建议阅读“你可以通过添加你的意图来改进你的答案。”code@AbdulWaheed谢谢,但我认为这段代码一开始就太简单和清晰了glance@ArtisticPhoenix是,如果仅统计信息“”
array_filter()
是贪婪的,在少数情况下,它会返回不准确的结果,原因是错误的、零的、空值。您可以通过添加您的code@AbdulWaheed谢谢,但我认为这段代码一开始就太简单和清晰了glance@ArtisticPhoenix是,如果仅统计信息“”
array_filter()
是贪婪的,在少数情况下,它会返回不准确的结果,原因是错误的、零的、空值。