Maison  >  Article  >  développement back-end  >  Comment fusionner des tableaux et supprimer les doublons en php

Comment fusionner des tableaux et supprimer les doublons en php

PHPz
PHPzoriginal
2023-04-19 09:21:553173parcourir

Dans le développement PHP, lors de la fusion de tableaux, il y a parfois des valeurs en double dans le tableau, et nous souhaitons supprimer les valeurs en double du tableau fusionné. Comment devrions-nous gérer cela ? Cet article présentera une méthode simple et pratique qui vous permet de fusionner facilement des tableaux et de supprimer les doublons.

Méthode 1 : combiner array_merge avec array_unique

La fonction array_merge en PHP fusionne un ou plusieurs tableaux en un seul tableau, ce qui peut répondre aux besoins de fusion de tableaux, tandis que la fonction array_unique peut supprimer les valeurs en double dans le tableau. La combinaison de ces deux fonctions peut réaliser les fonctions de fusion et de déduplication.

L'exemple de code est le suivant :

$array1 = array('a', 'b', 'c');
$array2 = array('b', 'c', 'd');
$array3 = array('c', 'd', 'e');

$merged_array = array_merge($array1, $array2, $array3);
$unique_array = array_unique($merged_array);
print_r($unique_array);

Le résultat de sortie est le suivant :

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => e
)

Dans le code ci-dessus, trois tableaux sont d'abord définis, à savoir $array1, $array2 et $array3. Utilisez ensuite la fonction array_merge pour fusionner ces trois tableaux en un seul tableau $merged_array. Ensuite, utilisez la fonction array_unique pour supprimer les valeurs en double et enfin obtenez le tableau fusionné et dédupliqué $unique_array.

Méthode 2 : utilisez l'opérateur "+"

En PHP, vous pouvez également utiliser l'opérateur "+" pour fusionner deux tableaux et supprimer les valeurs en double. Cet opérateur supprimera les valeurs de clé en double dans le premier tableau du deuxième tableau.

L'exemple de code est le suivant :

$array1 = array('a', 'b', 'c');
$array2 = array('b', 'c', 'd');
$array3 = array('c', 'd', 'e');

$merged_array = $array1 + $array2 + $array3;
print_r($merged_array);

Le résultat de sortie est le suivant :

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => e
)

Dans le code ci-dessus, trois tableaux sont d'abord définis, à savoir $array1, $array2 et $array3. Utilisez ensuite l'opérateur "+" pour fusionner ces trois tableaux en un seul tableau $merged_array. Puisqu'il y a des valeurs de clé en double dans le deuxième tableau et le premier tableau, l'opérateur "+" supprime les valeurs de clé en double dans le premier tableau. Enfin, le tableau fusionné et dédupliqué $merged_array est obtenu.

Méthode 3 : Utiliser la fonction array_reduce

En plus des deux méthodes ci-dessus, nous pouvons également utiliser la fonction array_reduce en PHP pour fusionner des tableaux et supprimer les doublons. Dans la fonction array_reduce, nous pouvons personnaliser une fonction de rappel pour fusionner des tableaux afin d'obtenir la fonction de suppression des valeurs en double.

L'exemple de code est le suivant :

$array1 = array('a', 'b', 'c');
$array2 = array('b', 'c', 'd');
$array3 = array('c', 'd', 'e');

$merged_array = array_reduce(array($array1, $array2, $array3), function ($merged, $arr) {
    foreach ($arr as $value) {
        if (!in_array($value, $merged)) {
            array_push($merged, $value);
        }
    }
    return $merged;
}, array());

print_r($merged_array);

Le résultat de sortie est le suivant :

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => e
)

Dans le code ci-dessus, nous utilisons la fonction array_reduce pour fusionner trois tableaux en un seul tableau. Parmi eux, le premier paramètre est le tableau qui doit être traité, le deuxième paramètre est la fonction de rappel et le troisième paramètre est la valeur initiale de la fonction de rappel. À l'intérieur de la fonction de rappel, nous utilisons une boucle foreach pour parcourir les valeurs de chaque tableau et utilisons la fonction in_array pour déterminer si la valeur existe dans le tableau fusionné. Si elle n'existe pas, la valeur est ajoutée au tableau fusionné et le résultat final fusionné est renvoyé.

Pour résumer, nous pouvons utiliser trois méthodes pour fusionner des tableaux et supprimer les doublons en PHP. Ces méthodes sont array_merge combinées avec array_unique, en utilisant l'opérateur "+" et en utilisant la fonction array_reduce. Selon différents besoins et scénarios, nous pouvons choisir la méthode appropriée pour réaliser la fusion et la déduplication des baies.

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