PHP array_merge
La función de PHP array_merge combina 2 o más arrays, dando como resultado un nuevo array
Description / Descripciónarray_merge(array ...$arrays): arraySintaxis / Sintax
$merged_array = array_merge($array1, array2); $merged_array2 = array_merge($array1, array2,array3);
Casos
Arrays asociativos
Si los arrays tienen la misma clave keys, el valor sera sobrescribido, por ejemplo si tengo 2 arrays:
$A =["name"=>"Pancho", "raza"=>"caniche"]
y $B =["name"=>"Rocko", "peso"=>"20kg"]
si $C es mi array combinado $C seria $C=["name"=>"Rocko","raza"=>"caniche", "peso"=>"20kg"]
Cuando vemos una imagen como está lo que estamos viendo son los keys, siempre si los keys son iguales tomará el valor del último array.
Arrays Numéricos e indexados
En este caso la combinación tiene un comportamiento diferente, en estos casos no se sobrescribirán los valores que tengan el mismo índice sino que serán agregados en el nuevo array que comenzara desde 0
si tenemos 2 array: $A=["toyota","mazda"]
y $B=["ford","chevrolet"]
estos 2 array tienen indices 0 y 1, la combinacion que obtengamos al aplicarles la función array_merge sera $C=["toyota","mazda","ford","chevrolet"]
Parametros
...$arrays
– son los arrays que se combinaran, la idea es que al menos pases 2 arrays
Retorno
array
– es el resultado de la combinación
array
– array vacio [] en caso de llamar a array_merge
sin parámetros
Ejemplos de PHP array_merge
El primer ejemplo que veremos es uno con arrays indexados, observe como la funcion array_merge
trata estos arrays
$array1 = array('Toyota', 'Honda', 'Ford'); $array2 = array('Chevrolet', 'Nissan', 'BMW'); $mergedArray = array_merge($array1, $array2); print_r($mergedArray);
Array ( [0] => Toyota [1] => Honda [2] => Ford [3] => Chevrolet [4] => Nissan [5] => BMW )
En este otro ejemplo vemos como la función array_merge
trata a los array asociativos, talvez te convenga cambiar el valor de Japón por otro país en el segundo array para ver más claro como combina los arrays
$array1 = array('Toyota' => 'Japón', 'Ford' => 'Estados Unidos'); $array2 = array('Toyota' => 'Japón', 'Chevrolet' => 'Estados Unidos'); $mergedArray = $array1 + $array2; print_r($mergedArray);
Array ( [Toyota] => Japón [Ford] => Estados Unidos [Chevrolet] => Estados Unidos )
Puedes ver otras funciones aplicables a arrays o que crean arrays en PHP array functions en español