如何过滤空/ null多维数组

时间:2017-01-31 17:21:05

标签: php arrays multidimensional-array laravel-5 array-filter

[     array:26[ 0 => array:2 [ 0=>"array:2 means array is not empty" ] 1 => array:1 [ 0=>"array:1 means array is empty or null" ] ]

数组1到26是空数组,将使用array_filter进行过滤,但问题是它无法过滤空数组。

目标是这个 - 使用array_filter返回!empty($ arr)。但仍然没有过滤空数组。我尝试使用array_values然后应用array_filter但结果仍然相同。关于如何过滤这些空数组的任何想法?那对我来说会有更大的帮助,谢谢!顺便说一下,这是一个多维数组。 ] 1

1 个答案:

答案 0 :(得分:0)

数组的位置1不为空,它有一个数组元素(0 =>'') 尝试:

function notEmpty($a)
{
    if(is_array($a))
        return array_filter($a, "notEmpty");
    return !empty($a);
}
$result = array_filter($yourarray, "notEmpty");

ps:empty(array(0 => ''))评估为false,因为empty('')评估为真