(PHP 4 >= 4.0.1, PHP 5, PHP 7)
array_merge_recursive — Funde dois ou mais arrays recursivamente
$array1
[, array $...
] )array_merge_recursive() funde os elementos de um ou mais arrays de forma que os elementos de um são colocados no final do array anterior. Retorna o array resultante da fusão.
Se os arrays dados tem as mesmas chaves string, então os valores para uma chave são fundidos em um array, e isso é feito recursivamente, sendo que, se um dos valores for um array também, este função irá fundi-lo com os valores correspondentes no array resultante também. Se, no entanto, os arrays tem as mesmas chaves numéricas, o último valor para uma chave não sobrescreverá o valor original, e sim adicionado ao array resultante.
array1
Array inicial para fundir.
array
Lista variável de arrays para fundir recursivamente.
Um array de valores resultados da fusão dos argumentos.
Exemplo #1 Exemplo de array_merge_recursive()
<?php
$ar1 = array("cor" => array ("favorita" => "vermelho"), 5);
$ar2 = array(10, "cor" => array ("favorita" => "verde", "azul"));
$result = array_merge_recursive($ar1, $ar2);
print_r($result);
?>
O exemplo acima irá imprimir:
Array ( [cor] => Array ( [favorita] => Array ( [0] => vermelho [1] => verde ) [0] => azul ) [0] => 5 [1] => 10 )