Фильтровать многомерные массивы

Array ( [user_mob_1] => Array ( [mob_code] => 06 [mob] => 069633345 [type] => 1 [phone_id] => 0 ) [user_mob_2] => Array ( [mob_code] => 07 [mob] => 07123456 [type] => 1 [phone_id] => ) [user_mob_6] => Array ( [mob_code] => 0 [mob] => [type] => 1 [phone_id] => 0 ) ) 

Цель состоит в том, чтобы удалить user_mob_ *, где толпа пуста!

Ответ:

 foreach($array as $key => $row) { if(empty($row['mob'])) unset($array[$key]); } 

Простой, но я новичок в php, и сначала я решил использовать такие функции, как array_filter и т. Д.

Все гениальное просто.

    Ваша идея использования встроенной функции, такой как array_filter очень хорошая; У PHP много таких, которые могут сделать вашу жизнь проще.

    В частности, array_filter принимает обратный вызов , который можно использовать для настройки логики фильтрации. Это будет работать:

     $filtered = array_filter($array, function($el) { return !empty($el['mob']); }); 

    Здесь обратный вызов предоставляется как анонимная функция .