(PHP 4, PHP 5)
array_merge — Combina dos o más arrays
$array1
[, array $...
] )Combina 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 string, entonces el valor más posterior para esa clave sobrescribirá a la anterior. Sin embargo, los arrays que contengan claves numéricas, el valor posterior no sobrescribirá el valor original, sino que sera adjuntado.
Los valores en el array de entrada con claves numéricas serán renumeradas con claves incrementales comenzando desde cero en el array de resultado.
array1
Array inicial para combinar.
...
Lista variable de arrays para combinar.
Retorna el array resultante.
Versión | Descripción |
---|---|
5.0.0 |
Advertencia
El comportamiento de array_merge() fue modificado en PHP 5. A diferencia de PHP 4, array_merge() ahora sólo acepta parámetros de tipo array. Sin embargo, se puede utilizar typecasting para combinar otros tipos. Véase el siguiente ejemplo para más detalles.
Ejemplo #1 Ejemplo de array_merge() de PHP 5
<?php El resultado del ejemplo sería: Array ( [0] => foo [1] => bar ) |
Ejemplo #2 Ejemplo de array_merge()
<?php
$array1 = array("color" => "red", 2, 4);
$array2 = array("a", "b", "color" => "green", "shape" => "trapezoid", 4);
$result = array_merge($array1, $array2);
print_r($result);
?>
El resultado del ejemplo sería:
Array ( [color] => green [0] => 2 [1] => 4 [2] => a [3] => b [shape] => trapezoid [4] => 4 )
Ejemplo #3 Ejemplo de array_merge() simple
<?php
$array1 = array();
$array2 = array(1 => "data");
$result = array_merge($array1, $array2);
?>
¡No se debe olvidar que las claves numéricas serán renumeradas!
Array ( [0] => data )
Si se desean anexar elementos del segundo array al primer array entretanto no se sobrescriban los elementos del primer array y no se reindexe, 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');
$result = $array1 + $array2;
var_dump($result);
?>
Las claves del primer array se preservaran. Si una clave existe en ambos arrays, entonces el elemento del primer array será usado 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" }