(PHP 4, PHP 5, PHP 7, PHP 8)
array_merge — Fusionne plusieurs tableaux en un seul
Description
array_merge(array
...$arrays): array
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é.
Liste de paramètres
-
arrays
-
Liste de tableaux variable à fusionner.
Valeurs de retour
Retourne le tableau résultant.
Si appellé sans arguments, retourne un tableau vide.
Historique
Exemples
Exemple #1 Exemple avec array_merge()
<?php
$array1 = array("color" => "red", 2, 4);
$array2 = array("a", "b", "color" => "green", "shape" => "trapezoid", 4);
$result = array_merge($array1, $array2);
print_r($result);
?>
L'exemple ci-dessus va afficher :
Array
(
[color] => green
[0] => 2
[1] => 4
[2] => a
[3] => b
[shape] => trapezoid
[4] => 4
)
Exemple #2 Exemple simple avec array_merge()
<?php
$array1 = array();
$array2 = array(1 => "data");
$result = array_merge($array1, $array2);
?>
N'oubliez pas que les index numériques seront réindexés !
Array
(
[0] => 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 + :
<?php
$array1 = array(0 => '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.
array(5) {
[0]=>
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 #3 Exemple avec array_merge() avec des types non-tableaux
<?php
$beginning = 'foo';
$end = array(1 => 'bar');
$result = array_merge((array)$beginning, (array)$end);
print_r($result);
?>
L'exemple ci-dessus va afficher :
Array
(
[0] => foo
[1] => bar
)
Voir aussi
- array_merge_recursive() - Combine un ou plusieurs tableaux ensemble, récursivement
- array_replace() - Remplace les éléments d'un tableau par ceux d'autres tableaux
- array_combine() - Crée un tableau à partir de deux autres tableaux
- les opérateurs de tableau