En este post expongo cómo combinar o unir arrays (también llamados arreglos) en PHP usando la función array_merge
y un algoritmo manual con ciclos, con ejemplos sencillos.
Unir dos arrays usando array_merge
La forma más fácil de unir o concatenar dos arreglos en PHP es usando la función array_merge
, la cual combina dos arreglos y devuelve la combinación de los mismos.
Veamos un ejemplo de código que une 2 arrays:
<?php
$gatos = array("Michi", "Misifú");
$perros = array("Maggie", "Guayaba");
$mascotas = array_merge($gatos, $perros);
print_r($mascotas);
/*
Array
(
[0] => Michi
[1] => Misifú
[2] => Maggie
[3] => Guayaba
)
*/
En este caso los arreglos fueron de cadena, pero podrían ser de cualquier tipo e incluso tener más profundidad.
Un algoritmo que concatena dos arreglos en PHP
También podemos hacer esto “a mano” agregando cada elemento al otro arreglo, ya sea usando array_push
o asignando a $arreglo[]
En este caso lo haré con array_push
para hacer el código entendible si vienes de otro lenguaje 😉
<?php
// https://parzibyte.me/blog
$gatos = array("Michi", "Misifú");
$perros = array("Maggie", "Guayaba");
# Creamos el resultado, que al principio es el primer arreglo
$mascotas = $gatos;
// Al que vamos a adjuntar lo recorremos
foreach ($perros as $perro) {
// Y en cada paso, agregamos el valor al otro
array_push($mascotas, $perro);
}
print_r($mascotas);
/*
Array
(
[0] => Michi
[1] => Misifú
[2] => Maggie
[3] => Guayaba
)
*/
Al arreglo resultante (R) le asignamos el valor del arreglo A, después recorremos B y vamos agregando cada valor de B a R usando array_push
.
Conclusión
Así de fácil es unir dos arreglos en PHP. Si quisieras 3 arreglos, el proceso sería algo como:
$combinado = array_merge($arreglo1, $arreglo2, $arreglo3);
En el ejemplo de arriba hemos combinado 3 arreglos con PHP, pues array_merge
acepta argumentos infinitos o variádicos.