Functie array_walk_recursive
De functie array_walk_recursive past een gegeven
functie toe op alle elementen van een multidimensionale array.
Retourneert true bij succesvolle voltooiing
of false in geval van een fout.
Als eerste parameter accepteert de functie
een array, en als tweede - een callback.
Er worden twee parameters doorgegeven aan de callback. Als eerste parameter gaat het waarde van het array-element, en als tweede - de sleutel.
De array die aan de functie is doorgegeven, verandert op zichzelf niet. Maar dit kan bereikt worden door het element by reference door te geven.
Syntaxis
array_walk_recursive(array|object &$array, callable $callback, mixed $arg = null): bool
Voorbeeld
Laten we een multidimensionale array doorlopen en zijn sleutels en elementen weergeven:
<?php
$arr = [
'a' => 1,
'b' => 2,
'c' => [
'd' => 3,
'e' => 4,
],
];
array_walk_recursive($arr, function($elem, $key) {
echo $key . ' ' . $elem . '<br>';
});
?>
Resultaat van code-uitvoering:
'a 1'
'b 2'
'd 3'
'e 4'
Voorbeeld
Laten we een array doorlopen en zijn elementen kwadrateren:
<?php
$arr = [
'a' => 1,
'b' => 2,
'c' => [
'd' => 3,
'e' => 4,
],
];
array_walk_recursive($arr, function(&$elem, $key) {
$elem = $elem ** 2;
});
var_dump($arr);
?>
Resultaat van code-uitvoering:
[
'a' => 1,
'b' => 4,
'c' => [
'd' => 9,
'e' => 16,
],
];
Zie ook
-
functie
array_walk,
die een functie aanroept voor array-elementen -
functie
array_map,
die een functie toepast op array-elementen -
functie
array_filter,
die een array filtert -
functie
array_reduce,
die een array reduceert