Kursempfehlung:
PHP array_replace_recursive() Funktion
Beispiel
<?php $a1=array("a"=>array("rot"),"b"=>array("grün","blau"),); $a2=array("a"=>array("gelb"),"b"=>array("schwarz")); print_r(array_replace_recursive($a1,$a2)); ?>
Rekursiv die Werte der zweiten Liste ($a2) verwenden, um die Werte der ersten Liste ($a1) zu ersetzen:
Definition und Verwendung
array_replace_recursive() Funktion verwendet rekursiv die Werte der nachfolgenden Liste, um die Werte der ersten Liste zu ersetzen.Hinweis:
Sie können einer Funktion eine Liste oder mehrere Listen übergeben. array1 , befindet sich ein Schlüssel im ersten Array array2, befindet sich auch im zweiten Array array1 , wird der Wert des ersten Arrays array2 wird der Wert durch den Wert des zweiten Arrays ersetzt. array1, bleibt unverändert. Wenn ein Schlüssel im zweiten Array array2, aber nicht im ersten Array vorhanden array1, wird sie im ersten Array array1 diesem Element erstellt. Wenn mehrere Ersetzungslisten übergeben werden, werden sie in der Reihenfolge verarbeitet und die Werte der nachfolgenden Listen ersetzen die Werte der vorherigen Listen.
Anmerkung:Wenn keine Schlüssel für jede Liste angegeben werden, verhält sich diese Funktion wie array_replace() Funktion.
Grammatik
array_replace_recursive(array1,array2,array3...)
Parameter | Beschreibung |
---|---|
array1 | Erforderlich. Definiert das Array. |
array2 | Optional. Bestimmt das zu ersetzende array1 Wert-Array. Optional. Bestimmt das zu ersetzende |
array3,... | Optional. Bestimmt mehrere zu ersetzende array1 und array2Wert-Array von ..., das den Wert der nachfolgenden Arrays überschreibt. |
Technische Details
Rückgabewert: | Gibt das ersetzte Array zurück, wenn ein Fehler auftritt, gibt NULL zurück. |
PHP-Version: | 5.3.0+ |
Mehrere Beispiele
Beispiel 1
Mehrere Arrays:
<?php $a1=array("a"=>array("rot"),"b"=>array("grün","blau")); $a2=array("a"=>array("gelb"),"b"=>array("schwarz")); $a3=array("a"=>array("orange"),"b"=>array("burgund")); print_r(array_replace_recursive($a1,$a2,$a3)); ?>
Beispiel 2
Unterschiede zwischen array_replace() und array_replace_recursive():
<?php $a1=array("a"=>array("rot"),"b"=>array("grün","blau"),); $a2=array("a"=>array("gelb"),"b"=>array("schwarz")); $result=array_replace_recursive($a1,$a2); print_r($result); $result=array_replace($a1,$a2); print_r($result); ?>