(PHP 4, PHP 5, PHP 7, PHP 8)
array_merge — Fusiona varios arrays en uno solo
array_merge() combina los elementos de uno o varios arrays añadiendo los valores de uno al final del otro. El resultado es un array.
Si los arrays de entrada tienen claves comunes, entonces, el valor final para esa clave sobrescribirá al anterior. Sin embargo, si los arrays contienen claves numéricas, el valor final no sobrescribirá el valor original, sino que será añadido.
Las claves numéricas de los arrays de entrada serán renumeradas en claves incrementadas partiendo de cero en el array fusionado.
arrays
Lista de arrays variable para fusionar.
Devuelve el array resultante. Si se invoca sin argumentos, devuelve un array vacío.
Versión | Descripción |
---|---|
7.4.0 | Esta función puede ser ahora llamada sin parámetros. Anteriormente, al menos un parámetro era requerido. |
Ejemplo #1 Ejemplo con 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 #2 Ejemplo simple con array_merge()
<?php
$array1 = array();
$array2 = array(1 => "data");
$result = array_merge($array1, $array2);
print_r($result);
?>
No se olvide de que los índices numéricos serán reindexados.
Array ( [0] => data )
Si se desea añadir elementos del segundo array al primero
sin sobrescribir o reindexar los elementos del primero,
utilice el operador de unión +
:
<?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 son preservadas. Si una clave existe en los 2 arrays, entonces el elemento del primero será utilizado y la clave correspondiente del segundo será ignorada.
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 Ejemplo con array_merge() con tipos no-array
<?php
$beginning = 'foo';
$end = array(1 => 'bar');
$result = array_merge((array) $beginning, (array) $end);
print_r($result);
?>
El resultado del ejemplo sería:
Array ( [0] => foo [1] => bar )