Aprenda a mesclar dois arrays no PHP

Veja como unir dois arrays no PHP utilizando diferentes métodos para manipulação de listas de dados.

Como mesclar dois arrays no PHP?

No PHP, mesclar arrays é uma tarefa comum ao trabalhar com listas de dados, combinando valores de diferentes fontes. O PHP oferece várias formas de unir arrays, como array_merge(), array_merge_recursive() e o operador +.

Mesclando arrays com array_merge()

A função array_merge() combina os elementos de dois ou mais arrays:

<?php
$array1 = ["a", "b", "c"];
$array2 = ["d", "e", "f"];
$resultado = array_merge($array1, $array2);
print_r($resultado);
?>

Saída:

Array ( [0] => a [1] => b [2] => c [3] => d [4] => e [5] => f )

Aqui, os elementos dos dois arrays foram mesclados em um único array.

Mesclando arrays associativos com array_merge()

Se houver chaves repetidas, array_merge() sobrescreve os valores do primeiro array pelos do segundo:

<?php
$dados1 = ["nome" => "Carlos", "idade" => 30];
$dados2 = ["idade" => 25, "cidade" => "São Paulo"];
$resultado = array_merge($dados1, $dados2);
print_r($resultado);
?>

Saída:

Array ( [nome] => Carlos [idade] => 25 [cidade] => São Paulo )

Aqui, a idade foi sobrescrita pelo segundo array.

Mantendo valores repetidos com array_merge_recursive()

Se quisermos manter todos os valores, podemos usar array_merge_recursive():

<?php
$dados1 = ["nome" => "Carlos", "interesses" => "PHP"];
$dados2 = ["interesses" => "JavaScript"];
$resultado = array_merge_recursive($dados1, $dados2);
print_r($resultado);
?>

Saída:

Array ( [nome] => Carlos [interesses] => Array ( [0] => PHP [1] => JavaScript ) )

Agora, interesses virou um array contendo ambos os valores.

Mesclando arrays com o operador +

O operador + mescla arrays, mas mantém apenas os valores do primeiro array se houver chaves duplicadas:

<?php
$array1 = [1 => "A", 2 => "B"];
$array2 = [2 => "C", 3 => "D"];
$resultado = $array1 + $array2;
print_r($resultado);
?>

Saída:

Array ( [1] => A [2] => B [3] => D )

Aqui, B foi mantido, e C foi ignorado, pois a chave 2 já existia no primeiro array.

Mesclar arrays no PHP é uma técnica essencial para manipulação de listas de dados, sendo útil para combinar informações de diferentes fontes. O array_merge() é ideal para junções simples, enquanto array_merge_recursive() preserva valores duplicados. O operador + pode ser uma alternativa eficiente quando queremos manter as chaves do primeiro array intactas.

Algumas aplicações:

  • Combinação de listas de produtos ou usuários
  • Junção de configurações de diferentes arquivos
  • Fusão de dados de formulários e bancos de dados
  • Unificação de arrays para APIs e JSON

Dicas para quem está começando

  • Use array_merge() para juntar arrays simples.
  • Se precisar manter valores repetidos, prefira array_merge_recursive().
  • O operador + preserva chaves do primeiro array, então pode ser útil para evitar sobrescrições.
  • Verifique o tipo de dado esperado antes de escolher a função ideal.
  • Teste sempre o resultado da mesclagem para garantir que os dados foram combinados corretamente.

Contribuições de Rafael Nogueira

Compartilhe este tutorial: Como mesclar dois arrays no PHP?

Compartilhe este tutorial

Continue aprendendo:

Como obter a chave de um valor em um array?

Veja como obter a chave correspondente a um valor dentro de um array no PHP utilizando diferentes abordagens.

Tutorial anterior

Como capturar dados de um formulário em PHP?

Veja como capturar dados enviados por um formulário HTML utilizando PHP e os métodos GET e POST para processamento eficiente.

Próximo tutorial