(PHP 4, PHP 5, PHP 7)
array_merge — Combina dos o más arrays
$array1
[, array $...
] ) : arrayCombina los elementos de uno o más arrays juntándolos de modo que los valores de uno se anexan al final del anterior. Retorna el array resultante.
Si los arrays de entrada tienen las mismas claves de tipo string, el último valor para esa clave sobrescribirá al anterior. Sin embargo, los arrays que contengan claves numéricas, el último valor no sobrescribirá el valor original, sino que será añadido al final.
Los valores del array de entrada con claves numéricas serán renumeradas con claves incrementales en el array resultante, comenzando desde cero.
array1
Array inicial a combinar.
...
Lista variable de arrays para combinar.
Retorna el array resultante.
Ejemplo #1 Ejemplo de array_merge()
<?php
$array1 = array("color" => "red", 2, 4);
$array2 = array("a", "b", "color" => "green", "shape" => "trapezoid", 4);
$resultado = array_merge($array1, $array2);
print_r($resultado);
?>
El resultado del ejemplo sería:
Array ( [color] => green [0] => 2 [1] => 4 [2] => a [3] => b [shape] => trapezoid [4] => 4 )
Ejemplo #2 Ejemplo de sencillo de array_merge()
<?php
$array1 = array();
$array2 = array(1 => "data");
$resultado = array_merge($array1, $array2);
?>
¡No olvidarse de que las claves numéricas serán renumeradas!
Array ( [0] => data )
Para anexar elementos del segundo array al primer array entretanto no se sobrescriban los elementos del primer array y no se reindexe, se ha de utilizar el operador + de unión de arrays.
<?php
$array1 = array(0 => 'zero_a', 2 => 'two_a', 3 => 'three_a');
$array2 = array(1 => 'one_b', 3 => 'three_b', 4 => 'four_b');
$resultado = $array1 + $array2;
var_dump($resultado);
?>
Las claves del primer array se preservaran. Si una clave existe en ambos arrays, se usará el elemento del primer array, y el elemento de la clave coincidente del segundo array será ignorado.
array(5) { [0]=> string(6) "zero_a" [2]=> string(5) "two_a" [3]=> string(7) "three_a" [1]=> string(5) "one_b" [4]=> string(6) "four_b" }
Ejemplo #3 array_merge() con tipos que no son array
<?php
$comienzo = 'foo';
$fin = array(1 => 'bar');
$resultado = array_merge((array)$comienzo, (array)$fin);
print_r($resultado);
?>
El resultado del ejemplo sería:
Array ( [0] => foo [1] => bar )