array_mergeFusionne plusieurs tableaux en un seul
&reftitle.description;
arrayarray_mergearrayarraysarray_merge rassemble les éléments
d'un ou de plusieurs tableaux en ajoutant les valeurs
de l'un à la fin de l'autre. Le résultat est un tableau.
Si les tableaux d'entrées ont des clés en commun, alors,
la valeur finale pour cette clé écrasera la précédente. Cependant,
si les tableaux contiennent des clés numériques, la valeur
finale n'écrasera pas la valeur
originale, mais sera ajoutée.
Les clés numériques des tableaux d'entrées seront
renumérotées en clés incrémentées partant de zéro dans le tableau fusionné.
&reftitle.parameters;
arrays
Liste de tableaux variable à fusionner.
&reftitle.returnvalues;
Retourne le tableau résultant.
Si appellé sans arguments, retourne un &array; vide.
&reftitle.changelog;
&Version;&Description;7.4.0
Cette fonction peut désormais être appelée sans paramètres.
Auparavant, au moins un paramètre était requis.
&reftitle.examples;
Exemple avec array_merge
"red", 2, 4);
$array2 = array("a", "b", "color" => "green", "shape" => "trapezoid", 4);
$result = array_merge($array1, $array2);
print_r($result);
?>
]]>
&example.outputs;
green
[0] => 2
[1] => 4
[2] => a
[3] => b
[shape] => trapezoid
[4] => 4
)
]]>
Exemple simple avec array_merge
"data");
$result = array_merge($array1, $array2);
print_r($result);
?>
]]>
N'oubliez pas que les index numériques seront réindexés !
data
)
]]>
Si vous voulez ajouter des éléments du second tableau au premier
sans pour autant écraser ou ré-indexer les éléments du premier,
utilisez l'opérateur d'union + :
'zero_a', 2 => 'two_a', 3 => 'three_a');
$array2 = array(1 => 'one_b', 3 => 'three_b', 4 => 'four_b');
$result = $array1 + $array2;
var_dump($result);
?>
]]>
Les clés du premier tableau sont préservées. Si une clé existe
dans les 2 tableaux, alors l'élément du premier sera utilisé
et la clé correspondante du second sera ignorée.
string(6) "zero_a"
[2]=>
string(5) "two_a"
[3]=>
string(7) "three_a"
[1]=>
string(5) "one_b"
[4]=>
string(6) "four_b"
}
]]>
Exemple avec array_merge avec des types non-tableaux
'bar');
$result = array_merge((array) $beginning, (array) $end);
print_r($result);
?>
]]>
&example.outputs;
foo
[1] => bar
)
]]>
&reftitle.seealso;
array_merge_recursivearray_replacearray_combineles opérateurs de tableau