Die PHP-Funktion array_merge_recursive() ist eine rekursive Funktion, die zwei oder mehr Arrays zusammenfügt. Ähnlich wie die array_merge()-Funktion, die beim Zusammenführen von Arrays ein einzelnes Array zurückgibt, gibt array_merge_recursive() ein neues Array zurück, das die Elemente der zusammengeführten Arrays enthält. Der Unterschied liegt darin, dass array_merge_recursive() mehrdimensionale Arrays unterstützt und wenn die Arrays Schlüssel haben, die sich überschneiden, die Werte in ein neues Array verschachtelt.
Beispielsweise können Sie array_merge_recursive() verwenden, um mehrere Arrays in einer einzigen, hierarchischen Struktur zu kombinieren. Die Funktion nimmt eine beliebige Anzahl von Arrays als Argumente und führt sie zu einem einzigen Array zusammen. Wenn zwei oder mehr Arrays denselben Schlüssel haben, werden die Werte in ein neues Array verschachtelt, anstatt einen Wert zu überschreiben.
Die Funktion array_merge_recursive() ist eine leistungsstarke Funktion, die für die Kombination mehrdimensionaler Arrays sehr nützlich ist. Es kann aber auch verwendet werden, um einfache Arrays zusammenzuführen und ein einzelnes Array zurückzugeben, das die Elemente aller Arrays enthält.
Syntax von array_merge_recursive()
array_merge_recursive() ist eine Funktion, die eine beliebige Anzahl von Arrays als Argumente entgegennimmt und diese in ein einzelnes Array zusammenführt. Die Syntax der Funktion lautet:
array_merge_recursive(array1, array2, .., arrayN);
array1, array2 usw. sind die Arrays, die zusammengeführt werden. Die Funktion gibt ein neues Array zurück, das die Elemente aller übergebenen Arrays enthält. Wenn die übergebenen Arrays Schlüssel haben, die sich überschneiden, werden die Werte in ein neues Array verschachtelt, anstatt einen Wert zu überschreiben.
Wie führe ich mit array_merge_recursive() ein Array zusammen?
Die array_merge_recursive() Funktion kann verwendet werden, um ein oder mehrere Arrays in ein neues Array zu kombinieren. Wenn die übergebenen Arrays doppelte Schlüssel enthalten, werden die Werte dieser Schlüssel in ein Array kombiniert.
Beispiel:
<?php
$array1 = array("a" => array("apple", "banana"));
$array2 = array("a" => array("mango", "cherry"));
$result = array_merge_recursive($array1, $array2);
?>
Ausgabe:
array("a" => array("apple", "banana", "mango", "cherry"))
In diesem Beispiel werden die beiden Arrays $array1 und $array2 zusammengeführt. Das neue Array $result enthält alle Elemente der beiden Arrays. Der Wert des Schlüssels "a" wird in ein Array kombiniert, da die Schlüssel in beiden Arrays identisch sind.
Beispiel:
<?php
$array1 = array("color" => array("favorite" => "red"), 5);
$array2 = array(10, "color" => array("favorite" => "green", "blue"));
$result = array_merge_recursive($array1, $array2);
print_r($result);
?>
Der obige Code definiert zwei Arrays, $array1 und $array2. Beide Arrays enthalten verschiedene Werte, einschließlich Farben. Anschließend wird die Funktion array_merge_recursive() aufgerufen, um die beiden Arrays zu kombinieren. Diese Funktion kombiniert die Arrays, indem sie die Werte in einem Array zu denen im anderen Array hinzufügt. Im Ergebnis enthält das Array die Werte aus beiden Arrays. Schließlich wird die Funktion print_r() aufgerufen, um das Ergebnis auf dem Bildschirm anzuzeigen. Nach dem Ausführen des obigen Codes wird das folgende Ergebnis angezeigt:
Array ( [color] => Array ( [favorite] => Array ( [0] => red [1] => green [2] => blue ) ) [0] => 5 [1] => 10 )