Função array_merge_recursive

A função array_merge_recursive mescla dois ou mais arrays. A diferença para a função array_merge aparece quando nos arrays sendo mesclados existem chaves idênticas. Veja os exemplos.

Sintaxe

phparray_merge_recursive(array ...$arrays): array

Exemplo

Vamos mesclar dois arrays que possuem chaves idênticas:

php<?php
  $arr1 = ['a' => 1, 2, 3];
  $arr2 = ['a' => 4, 5, 6];
  
  $res = array_merge_recursive($arr1, $arr2);
  var_dump($res);
?>

Resultado da execução do código:

php['a' => [1, 4], 2, 3, 5, 6]

Exemplo

Para comparação, veja como a função array_merge funciona:

php<?php
  $arr1 = ['a' => 1, 2, 3];
  $arr2 = ['a' => 4, 5, 6];
  
  $res = array_merge($arr1, $arr2);
  var_dump($res);
?>

Resultado da execução do código:

php['a' => 1, 2, 3, 5, 6]

Veja também

  • a função array_merge,
    que também mescla arrays
  • a função array_combine,
    que combina dois arrays em um array associativo