Die Funktion array_walk_recursive()
wendet eine benutzerdefinierte Funktion auf jedes Element im Array an. In einer Funktion sind der Schlüsselname und der Schlüsselwert des Arrays Parameter.
Der Unterschied zwischen dieser Funktion und array_walk()
besteht darin, dass sie tiefere Arrays manipulieren kann (ein Array enthält ein anderes Array).
Wenden Sie benutzerdefinierte Funktionen auf jedes Element im Array an:
<? Php Funktion myfunktion ( $ value , $ key ) { echo "Der Wert des Schlüsselschlüssels ist $ value . <br>" ; } $ a1 = array ( "a" => "rot" , "b" => "grün" ) ; $ a2 = array ( $ a1 , "1" => "blau" , "2" => "gelb" ) ; array_walk_recursive ( $ a2 , "myfunction" ) ; ?>
Probieren Sie es selbst aus
Array_walk_recursive ( Array , MyFunktion , Parameter ... )
Parameter | beschreiben |
---|---|
Array | Erforderlich. Array angeben. |
Myfunktion | Erforderlich. Der Name der benutzerdefinierten Funktion. |
UserData , ... | Optional. Gibt die Parameter der benutzerdefinierten Funktion an. Sie können so viele Parameter über diese Funktion übergeben. |
Ähnlich wie bei array_walk()
wendet array_walk_recursive()
eine Rückruffunktion auf jedes Element im Array an. Der Unterschied besteht darin, dass, wenn die Elemente im ursprünglichen Array auch Arrays sind, die Rückruffunktion rekursiv bezeichnet wird, dh rekursiv in ein tieferes Array.
In der Regel akzeptiert MyFunction zwei Parameter. Der Wert des Array -Parameters ist der erste und der Schlüsselname der zweite. Wenn der optionale Parameter UserData bereitgestellt wird, wird er als dritter Parameter an die Rückruffunktion übergeben.
Wenn die Rückruffunktion direkt auf den Wert im Array handeln muss, können Sie den ersten Parameter der Rückruffunktion als Referenz angeben, damit Änderungen an diesen Einheiten auch das ursprüngliche Array selbst ändern.