PHP array_walk_recursive() Funktion
Beispiel
Anwenden der benutzerdefinierten Funktion auf jedes Element des Arrays:
<?php function myfunction($value, $key) { echo "Schlüssel $key hat den Wert $value .<br>"; } $a1 = array("a" => "red", "b" => "green"); $a2 = array($a1, "1" => "blue", "2" => "yellow"); array_walk_recursive($a2,"myfunction"); ?>
Definition und Verwendung
array_walk_recursive() Funktion wendet die benutzerdefinierte Benutzerfunktion auf jedes Element im Array an. In der Funktion sind der Schlüsselname und der Wert des Arrays Parameter.
Diese Funktion ist ähnlich wie array_walk() Der Unterschied der Funktion liegt darin, dass sie tiefere Arrays (eine Liste, die eine andere Liste enthält) operieren kann.
Syntax
array_walk_recursive(array,myfunction,parameter...)
Parameter | Beschreibung |
---|---|
array | Erforderlich. Legt das Array fest. |
myfunction | Erforderlich. Der Name der benutzerdefinierten Funktion. |
userdata,... | Optional. Legt die Parameter für die benutzerdefinierte Funktion fest. Sie können dieser Funktion so viele Parameter wie gewünscht übergeben. |
Beschreibung
mit array_walk() Die Funktion ähnlich, array_walk_recursive() Funktion wendet die Callback-Funktion auf jedes Element im Array an. Der Unterschied ist, dass wenn das Element im ursprünglichen Array auch ein Array ist, die Callback-Funktion rekursiv aufgerufen wird, das heißt, rekursiv bis in tiefere Ebenen des Arrays.
Im typischen Fall,myfunction akzeptiert zwei Parameter.array Der Wert des Parameters als erster, der Schlüsselname als zweiter. Wenn optionalen Parameter bereitgestellt werden userdata wird als dritter Parameter an die Callback-Funktion weitergegeben.
Wenn die Callback-Funktion direkt auf die Werte im Array angewendet werden soll, kann der erste Parameter der Callback-Funktion als Referenz angegeben werden, so dass jede Änderung an diesen Elementen auch die ursprüngliche Liste ändert.
Technische Details
Rückgabewert: | Gibt TRUE zurück, wenn erfolgreich, sonst FALSE. |
PHP Version: | 5+ |