(PHP 4, PHP 5, PHP 7, PHP 8)
array_merge — Fusiona varios arrays en uno solo
array_merge() reúne 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 en común, entonces, el valor final para esa clave sobrescribirá el 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 variables a fusionar.
Devuelve el array resultante. Si es llamado sin argumentos, devuelve un array vacío.
Versión | Descripción |
---|---|
7.4.0 | Esta función puede ahora ser 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);
?>
¡No olvide 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 )