Фильтрация пустых значений из массива в PHP лучше всего делать с помощью . Давайте возьмем простой массив, например: array_filter()
$data = array( null, true, false, 0, 1, 11, '', 'test' );
Теперь давайте пройдем через это : array_filter()
array_filter( $data );
В итоге мы получаем следующее:
array( true, 1, 11, 'test' );
Потрясающие! Что происходит, когда нам нужно отфильтровать этот массив?
$data = array(
null,
true,
false,
0,
1,
11,
'',
'test',
<span class="hiddenGrammarError"><span class="hiddenGrammarError"><span class="hiddenGrammarError"><span class="hiddenGrammarError">array(),
array</span></span></span></span>(
null,
true,
false,
0,
1,
11,
'',
'test',
array(),
array(
null,
true,
false,
0,
1,
11,
'',
'test',
array(),
),
),
);
Ну, PHP не предоставляет способ рекурсивной фильтрации многомерного массива.
Вот простая служебная функция, которая работает точно так же , но рекурсивно: array_filter()
Функция работает так же, как PHP и даже позволяет настраивать обратный вызов, если вы хотите его предоставить. Запуск нашего многомерного массива через возвращает этот результат: array_filter()
array_filter_recursive()
array(
true,
1,
11,
'test',
array(
true,
1,
11,
'test',
array(
true,
1,
11,
'test',
),
),
);
Статья была переведена для блога TechBlog.SDStudio.top
Источник: wpscholar.com