(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 tipo string, el último valor para esa clave sobrescribirá al anterior. Sin embargo, los arrays que contengan claves numéricas, el úlitmo 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.
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 la conversión de tipos para combinar otros tipos. Véase el siguiente ejemplo para más detalles.
Ejemplo #1 Ejemplo de array_merge() en 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);
$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 #3 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" }