Maison >développement back-end >tutoriel php >Comment puis-je fusionner des tableaux associatifs PHP tout en préservant les clés uniques ?
Fusion de tableaux associatifs avec des clés uniques
En PHP, les tableaux associatifs utilisent des clés de chaîne pour accéder aux valeurs. Lors de la fusion de deux de ces tableaux, les clés en double peuvent entraîner la perte des valeurs d'origine. Pour éviter cela, il est nécessaire de conserver les clés d'origine tout en combinant les tableaux.
Considérons l'exemple suivant :
$array1 = [ '11' => '11', '22' => '22', '33' => '33', '44' => '44' ]; $array2 = [ '44' => '44', '55' => '55', '66' => '66', '77' => '77' ];
Le but est de fusionner $array1 et $array2 tel que le Le résultat préserve les clés d'origine et supprime les doublons, ce qui entraîne :
$output = [ '11' => '11', '22' => '22', '33' => '33', '44' => '44', '55' => '55', '66' => '66', '77' => '77' ];
L'utilisation de la fonction array_unique en combinaison avec array_merge fait n'obtient pas le résultat souhaité car il réaffecte les clés. Une approche plus efficace consiste à utiliser l'opérateur, qui préserve les clés d'origine lors de la fusion de tableaux :
$output = $array1 + $array2;
Cette opération combine efficacement les deux tableaux, en écrasant les valeurs en double. Alternativement, pour recréer explicitement les clés, le code suivant peut être utilisé :
$output = array_combine($output, $output);
Les deux méthodes apportent une solution au problème de la fusion de tableaux associatifs avec des clés uniques tout en préservant les valeurs d'origine.
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!