array_merge
(PHP 4, PHP 5)
array_merge — Führt zwei oder mehr Arrays zusammen
Beschreibung
$array1
[, array $...
] )Fügt die Elemente von zwei oder mehr Arrays zusammen, indem die Werte des einen an das Ende des vorherigen angehängt werden. Das daraus resultierende Array wird zurückgegeben.
Haben die angegebenen Arrays die selben alphanumerischen Schlüssel, dann überschreibt der spätere Wert den vorhergehenden. Falls die Arrays aber gleiche numerische Schlüssel enthalten, überschreibt der spätere Wert den ursprünglichen Wert nicht und wird stattdessen angehängt.
Werte im Eingangsarray mit numerischen Schlüsseln werden im resultierenden Array mit aufsteigenden Schlüsseln, die bei Null beginnen, neu nummeriert.
Parameter-Liste
-
array1 -
Erstes Array zum Zusammenfügen.
-
... -
Variable Liste von zusammenzufügenden Arrays.
Rückgabewerte
Gibt das resultierende Array zurück.
Beispiele
Beispiel #1 array_merge()-Beispiel
<?php
$array1 = array("farbe" => "rot", 2, 4);
$array2 = array("a", "b", "farbe" => "grün", "form" => "trapezoid", 4);
$ergebnis = array_merge($array1, $array2);
print_r($ergebnis);
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
Array
(
[farbe] => grün
[0] => 2
[1] => 4
[2] => a
[3] => b
[form] => trapezoid
[4] => 4
)
Beispiel #2 Ein einfaches array_merge()-Beispiel
<?php
$array1 = array();
$array2 = array(1 => "daten");
$ergebnis = array_merge($array1, $array2);
?>
Vergessen Sie nicht, dass numerische Schlüssel neu nummeriert werden!
Array
(
[0] => daten
)
Falls Array-Elemente des zweiten Arrays an das erste Array angehängt werden sollen, ohne dass Elemente des ersten Arrays überschrieben werden und neu indexiert wird, kann der Vereinigungs-Operator + verwendet werden:
<?php
$array1 = array(0 => 'null_a', 2 => 'zwei_a', 3 => 'drei_a');
$array2 = array(1 => 'eins_b', 3 => 'drei_b', 4 => 'vier_b');
$ergebnis = $array1 + $array2;
var_dump($ergebnis);
?>
Die Schlüssel des ersten Arrays werden beibehalten. Falls ein Schlüssel in beiden Arrays vorkommt, wird das Element des ersten Arrays verwendet und das entsprechende Element des zweiten Arrays ignoriert.
array(5) {
[0]=>
string(6) "null_a"
[2]=>
string(5) "zwei_a"
[3]=>
string(7) "drei_a"
[1]=>
string(5) "eins_b"
[4]=>
string(6) "vier_b"
}
Beispiel #3 array_merge() mit nicht-Array-Typen
<?php
$anfang = 'foo';
$ende = array(1 => 'bar');
$ergebnis = array_merge((array)$anfang, (array)$ende);
print_r($ergebnis);
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
Array
(
[0] => foo
[1] => bar
)
Siehe auch
- array_merge_recursive() - Führt ein oder mehrere Arrays rekursiv zusammen
- array_replace() - Ersetzt Elemente von übergebenen Arrays im ersten Array
- array_combine() - Erzeugt ein Array, indem es ein Array für die Schlüssel und ein anderes für die Werte verwendet
- array operators