PHP | array_walk_recursive () Функция

Опубликовано: 24 Февраля, 2022

Функция array_walk_recursive () - это встроенная функция в PHP. Функция array_walk_recursive () просматривает весь массив независимо от позиции указателя и рекурсивно применяет функцию обратного вызова или пользовательскую функцию к каждому элементу массива. Ключи и значения элемента массива являются параметрами в функции обратного вызова. Разница между этой функцией и функцией array_walk () заключается в том, что она рекурсивно переходит в более глубокие массивы (массив внутри массива).

Синтаксис:

логический array_walk_recursive ($ array, myFunction, $ extraParam)

Параметры: эта функция принимает три параметра, как описано ниже:

  1. $ array : это обязательный параметр, указывающий входной массив.
  2. myFunction : этот параметр указывает имя определяемой пользователем функции и также является обязательным. Пользовательская функция обычно исключает два параметра, из которых первый параметр представляет значения массива, а второй параметр представляет соответствующие ключи.
  3. $ extraparam : это необязательный параметр. Он определяет дополнительный параметр для определяемой пользователем функции в дополнение к двум параметрам, ключам массива и значениям.

Возвращаемое значение: эта функция возвращает логическое значение. Он возвращает ИСТИНА в случае успеха или ЛОЖЬ в случае неудачи.

Ниже программы иллюстрируют функцию array_walk_recursive ():

Program 1:

<?php
  
// PHP program to illustrate 
// array_walk_recursive() function
  
// user-defined callback function
function myFunction($value, $key)
{
    echo "The key $key has the value $value ";
}
  
// Input arrays
$arr1=array("x"=>"india", "y"=>"Pakistan");
$arr2=array($arr1, "1"=>"China", "2"=>"Japan");
  
// calling array_walk_recursive() without
// extra parameter
array_walk_recursive($arr2, "myFunction");
  
?> 


Выход:

Ключ x имеет значение india 
Ключ y имеет значение Пакистан 
Ключ 1 имеет значение Китай. 
Ключ 2 имеет значение Япония.

Program 2:

<?php
  
// PHP program to illustrate 
// array_walk_recursive() function
  
// user-defined callback function 
// with extra parameter
function myFunction($value, $key , $extraParam)
{
    echo "The key $key $extraParam $value ";
}
  
// Input arrays
$arr1=array("x"=>"india", "y"=>"Pakistan");
$arr2=array($arr1, "1"=>"China", "2"=>"Japan");
  
// calling array_walk_recursive() with
// extra parameter
array_walk_recursive($arr2, "myFunction", "has the value");
  
?> 

Выход:

Ключ x имеет значение india 
Ключ y имеет значение Пакистан 
Ключ 1 имеет значение Китай. 
Ключ 2 имеет значение Япония.

Ссылка :
http://php.net/manual/en/function.array-walk-recursive.php

PHP