Maison >développement back-end >tutoriel php >Comment fusionner des tableaux à clé numérique en PHP tout en préservant les clés d'origine ?

Comment fusionner des tableaux à clé numérique en PHP tout en préservant les clés d'origine ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-22 09:17:35768parcourir

How to Merge Numerically-Keyed Arrays in PHP While Preserving Original Keys?

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn