(PHP 5, PHP 7, PHP 8)
array_walk_recursive — Рекурсивно применяет пользовательскую функцию к каждому элементу массива
Функция применяет пользовательскую callback
-функцию к каждому
элементу массива array
. Функция обрабатывает
каждый элемент многомерного массива.
array
Входной массив.
callback
Обычно callback
-функция принимает два аргумента.
Первым — значение элемента массива array
,
а вторым — ключ или индекс элемента.
Замечание:
Первый параметр
callback
-функции определяют как ссылку, если требуется, чтобыcallback
-функция изменяла значения исходного массива. Тогда изменения элементов внутри функции обратного вызова изменят сам исходный массив.
arg
Необязательный параметр arg
,
передаётся в callback
-функцию как третий аргумент,
если указали.
Функция возвращает логическое значение true
.
Версия | Описание |
---|---|
8.2.0 |
Значение возврата теперь принадлежит типу true ; раньше значение принадлежало типу bool.
|
Пример #1 Пример использования функции array_walk_recursive()
<?php
$sweet = array('a' => 'яблоко', 'b' => 'банан');
$fruits = array('sweet' => $sweet, 'sour' => 'лимон');
function test_print($item, $key)
{
echo "Ключ '$key' содержит значение: $item\n";
}
array_walk_recursive($fruits, 'test_print');
?>
Результат выполнения приведённого примера:
Ключ 'a' содержит значение: яблоко Ключ 'b' содержит значение: банан Ключ 'sour' содержит значение: лимон
Обратите внимание, что функция обратного вызова не выводит ключ sweet
.
Ключи с array-значением
не передаются в функцию обратного вызова.