Fusionner des tableaux associatifs à clé numérique tout en préservant les clés d'origine
Lors de la fusion de deux tableaux associatifs avec des index à clé numérique, il est courant de rencontrer des problèmes en préservant à la fois les éléments et leurs clés d'origine. Considérez les tableaux suivants :
array( '11' => '11', '22' => '22', '33' => '33', '44' => '44' ); array( '44' => '44', '55' => '55', '66' => '66', '77' => '77' );
L'utilisation de array_unique( array_merge( $array1 , $array2 ) ) peut sembler une solution, mais elle modifie les clés d'origine.
Solution 1 : Utilisation de array_merge et array_combine
Utilisez array_merge pour combiner les tableaux et array_combine pour recréer les clés d'origine :
$output = array_merge($array1, $array2); $output = array_combine($output, $output);
Solution 2 : Utilisation de l'opérateur Array Merge Union ( )
Une solution pratique consiste à utiliser l'array merge union opérateur ( ):
$output = $array1 + $array2;
Résultat :
Dans les deux cas, le tableau résultant conservera les clés d'origine et contiendra tous les éléments uniques :
array( '11' => '11', '22' => '22', '33' => '33', '44' => '44', '55' => '55', '66' => '66', '77' => '77' );
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!