php - 如何检查多维数组中的所有值是否为空

标签 php arrays multidimensional-array array-reduce

我有一个将多维数组发布到我的 PHP 脚本的表单,我需要知道数组中的所有值是否为空。

这是我的数组:

$array[] = array('a'=>'',
                 'b'=>array('x'=>''),
                 'c'=>array('y'=>array('1'=>'')),
                 'd'=>'');

我尝试使用 array_reduce(),但它只是返回一个数组:

echo array_reduce($array, "em");

function em($a,$b){
    return $a.$b;
}

有什么想法吗?

最佳答案

我注意到这已经存在了一段时间,这是一个运行良好的自定义函数。

function emptyArray($array) {
  $empty = TRUE;
  if (is_array($array)) {
    foreach ($array as $value) {
      if (!emptyArray($value)) {
        $empty = FALSE;
      }
    }
  }
  elseif (!empty($array)) {
    $empty = FALSE;
  }
  return $empty;
}

如果数组中的所有项都为空,则函数将返回 true,但如果数组中的一项不为空,则函数将返回 false。

用法:

if (emptyArray($ARRAYNAME)) {
  echo 'This array is empty';
}
else {
  echo 'This array is not empty';
}

关于php - 如何检查多维数组中的所有值是否为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19992280/

相关文章:

c++ - 在 C++ 中用整数填充固定大小的 char 数组

javascript - 在 JavaScript 中通过索引从对象数组中获取值?

php - 在 PHP 中为数组设置定义的随机顺序

php - CakePHP JS 助手 : How to set jQueryObject var outside of view?

php - SQLSTATE[HY000] [1044] cPanel 中的用户访问被拒绝

c++ - 如何创建一个返回数组的函数

php - 如何使用 PHP 调整 SVG 的大小?

java - 井字游戏控制台程序 - Java

PHP从列表构建递归数组

c - 这是在堆上优化多维数组的可能方法吗?