对于从PHP数组中删除空元素这一古老的问题,我似乎找不到一个简单而直接的解决方案。
我的输入数组可能如下所示:
Array ( [0] => Array ( [Name] => [EmailAddress] => ) )
(依此类推,如果有更多数据,尽管可能没有…)
如果看起来像上面的一样,我希望在处理 完 之后将其 完全清空 。
因此print_r($array);将输出:
print_r($array);
Array ( )
如果我运行,$arrayX = array_filter($arrayX);我仍然会得到 相同的 print_r输出。不过,我到过的所有地方都表明这是在PHP5中删除空数组元素的最简单方法。
$arrayX = array_filter($arrayX);
print_r
我也尝试过,$arrayX = array_filter($arrayX,'empty_array');但是出现以下错误:
$arrayX = array_filter($arrayX,'empty_array');
警告:array_filter()[function.array-filter]:第二个参数’empty_array’应该是有效的回调
我究竟做错了什么?
尝试使用array_map()将过滤器应用于的每个数组$array:
array_map()
$array
$array = array_map('array_filter', $array); $array = array_filter($array);