php中是否有一个内置的数组方法来过滤嵌套的关联数组?
例如:
$myArray = array(
array('key1' => ''),
array('key1' => 'value 1'),
array('key1' => 'value 2'),
);
我想删除任何带有和空值的元素——在本例中是第一个元素。
我知道array_filter会对平面数组做类似的事情,但除了循环并创建自己的新数组之外,我找不到任何东西。如果这是最好的解决方案,那没关系,我可以自己做。我只是不想忽略一个内置的方法。
$myArray = array_filter($myArray, function($el){ return !empty($el['key1']); });
有一些本地PHP函数可以用来实现这一点,它稍微简单一点:
- 从不包含值的嵌套数组中删除所有键,然后
-
删除所有空的嵌套数组。
$postArr = array_map('array_filter', $postArr); $postArr = array_filter( $postArr );