我有一个数组,在其中我不知道调用什么键,并且我试图从所有子键为空(无值)的数组中删除所有项。
我的数组看起来像这样。第二个元素[1]具有空值,因此我想将其删除,只保留第一个元素[0]。
Array
(
[0] => Array
(
[Some key here] => 26542973
[generated key] => John
[who knows what key] => 10
)
[1] => Array
(
[Some key here] =>
[generated key] =>
[who knows what key] =>
)
)
我尝试使用数组过滤器,但没有删除空元素。它将它们都留在了数组中。
$filtered_array = array_filter($array);
我希望最终结果看起来像这样(删除了空白元素)。
Array
(
[0] => Array
(
[Some key here] => 26542973
[generated key] => John
[who knows what key] => 10
)
)
答案 0 :(得分:4)
将 array_map 与 array_filter一起使用。
$array = array(array('data1','data1'), array('data2','data2'), array('',''));
$array = array_filter(array_map('array_filter', $array));
print_r($array);
答案 1 :(得分:2)
您可以使用array_filter()
,如底部所示。因此,您需要使用implode()
连接内部数组的项,并检查结果是否为空。
$arr = array_filter($arr, function($val){
return implode("", $val) != "";
});
在demo中查看结果