Le array_merge() récursif
<?php
$array1 = ['x' => 1, 3 => 4, 't' => 8];
$array2 = ['x' => 2, 5 => 6,];
$array3 = ['x' => [3, 4, 5]];
$array4 = ['x' => [[4]]];
$arrays = [$array1, $array2, $array3, $array4];
print_r(array_merge_recursive(...$arrays));
array_merge_recursive() fusionne plusieurs tableaux ensemble, comme son cousin array_merge(). La différence importante réside dans l’application du terme « récursif ».
L’opération est récursive car les clés de type chaîne seront regroupées dans un tableau chaque fois que la même clé apparaît plusieurs fois. Un nouveau tableau est créé : les valeurs scalaires y sont ajoutées, et les tableaux y sont fusionnés. Les clés uniques sont conservées intactes, et les clés entières sont réindexées à partir de 0.
Pour éviter la fusion de sous-tableaux, il faut les envelopper dans un autre tableau (voir array).
See Also
PHP Features
Last updated: 11 October 2026