Beispiel
Ersetzen der Werte des ersten Arrays mit den Werten aus dem zweiten Array rekursiv:
<?php
$a1=array("a"=>array("red"),"b"=>array("green","blue"),);
$a2=array("a"=>array("yellow"),"b"=>array("black"));
print_r(array_replace_recursive($a1,$a2));
?>
Führen Sie zB » Definition und Verwendung
Die array_replace_recursive() Funktion ersetzt , die Werte des ersten Arrays mit den Werten aus Arrays rekursiv folgenden.
Tip: Sie können ein Array an die Funktion zuweisen, oder so viele wie Sie möchten.
Wenn ein Schlüssel aus array1 in array2 vorhanden ist, Werte von array1 wird durch die Werte von array2 ersetzt werden. Wenn nur der Schlüssel in array1 vorhanden ist, wird es so bleiben, wie es ist. Wenn ein Schlüssel existiert in array2 und nicht in array1, wird es in array1 erstellt werden. Wenn mehrere Arrays verwendet werden, Werte von den später Arrays werden die vorherigen überschrieben.
Hinweis: Wenn Sie keinen Schlüssel für jedes Array angeben, wird diese Funktion verhält sie genau das gleiche wie die array_replace() Funktion.
Syntax
array_replace_recursive( array1,array2,array3... )
Parameter | Beschreibung |
---|---|
array1 | Erforderlich. Gibt einen Array |
array2 | Optional. Gibt einen Array, das die Werte von array1 ersetzen |
array3,... | Optional. Gibt mehr Arrays die Werte von array1 und array2 usw. Werte aus später Arrays überschreibt die vorherigen zu ersetzen. |
Technische Details
Rückgabewert: | Gibt das ersetzt Array oder NULL, wenn ein Fehler auftritt |
---|---|
PHP Version: | 5.3.0+ |
Mehr Beispiele
Beispiel 1
Mehrere Arrays:
<?php
$a1=array("a"=>array("red"),"b"=>array("green","blue"));
$a2=array("a"=>array("yellow"),"b"=>array("black"));
$a3=array("a"=>array("orange"),"b"=>array("burgundy"));
print_r(array_replace_recursive($a1,$a2,$a3));
?>
Führen Sie zB » Beispiel 2
Die Unterschiede zwischen der array_replace() und array_replace_recursive() :
<?php
$a1=array("a"=>array("red"),"b"=>array("green","blue"),);
$a2=array("a"=>array("yellow"),"b"=>array("black"));
$result=array_replace_recursive($a1,$a2);
print_r($result);
$result=array_replace($a1,$a2);
print_r($result);
?>
Führen Sie zB » <PHP Array Reference