Maison  >  Article  >  développement back-end  >  Comment supprimer des éléments identiques de deux tableaux en php

Comment supprimer des éléments identiques de deux tableaux en php

PHPz
PHPzoriginal
2023-04-26 14:21:501046parcourir

En PHP, supprimer des éléments identiques de deux tableaux est une tâche très courante. Normalement, nous pouvons utiliser les fonctions intégrées de PHP pour accomplir cette tâche. Dans cet article, je vais vous montrer comment supprimer des éléments identiques de deux tableaux en utilisant des méthodes différentes.

Méthode 1 : fonction array_diff()

La fonction array_diff() intégrée de PHP peut facilement trouver la différence entre deux tableaux. Nous pouvons utiliser cette fonction pour trouver les différents éléments dans deux tableaux.

Voici un exemple :

$array1 = array("apple", "banana", "orange");
$array2 = array("apple", "pear");

$result = array_diff($array1, $array2);

print_r($result);

Le résultat est :

Array
(
    [1] => banana
    [2] => orange
)

Cela signifie "banane" et "orange" dans $array1 L'élément n'est pas dans $array2.

Méthode 2 : Utiliser une boucle

Une autre solution consiste à utiliser une boucle pour parcourir les deux tableaux et supprimer les éléments identiques. Ici, nous pouvons utiliser l'instruction de boucle foreach pour parcourir le tableau et utiliser la fonction in_array() pour vérifier si le même élément existe dans le tableau.

Voici un exemple :

$array1 = array("apple", "banana", "orange");
$array2 = array("apple", "pear");

foreach ($array1 as $key => $value) {
    if (in_array($value, $array2)) {
        unset($array1[$key]);
    }
}

print_r($array1);

Le résultat est :

Array
(
    [1] => banana
    [2] => orange
)

C'est le même résultat que l'utilisation de la fonction array_diff(). Dans cet exemple, nous utilisons l'instruction de boucle foreach pour parcourir le premier tableau et utilisons la fonction in_array() pour vérifier si le même élément existe dans le deuxième tableau. Si le même élément existe, nous pouvons utiliser la fonction unset() pour supprimer l'élément du premier tableau.

Méthode 3 : Utilisez la fonction array_filter()

Nous pouvons utiliser la fonction array_filter() intégrée de PHP pour obtenir des éléments de tableau qui répondent à des conditions spécifiées. Nous pouvons utiliser cette fonction pour obtenir les différents éléments entre deux tableaux.

Voici un exemple :

$array1 = array("apple", "banana", "orange");
$array2 = array("apple", "pear");

$result = array_filter($array1, function ($value) use ($array2) {
    return !in_array($value, $array2);
});

print_r($result);

Le résultat est :

Array
(
    [1] => banana
    [2] => orange
)

C'est le même résultat que l'utilisation de la fonction array_diff(). Dans cet exemple, nous utilisons la fonction array_filter() pour obtenir les éléments du premier tableau qui ne sont pas les mêmes que ceux du deuxième tableau. Nous avons créé une fonction anonyme qui utilise la fonction in_array() pour vérifier si la valeur est dans le deuxième tableau. Sinon, nous renvoyons vrai, c'est-à-dire que la condition spécifiée est remplie et la valeur sera conservée dans le tableau résultat.

Conclusion

Les trois méthodes courantes ci-dessus utilisent des fonctions ou des boucles intégrées à PHP pour supprimer des éléments identiques de deux tableaux. Vous pouvez choisir la méthode appropriée en fonction de vos besoins réels. Quelle que soit la méthode que vous choisissez, cette tâche peut être accomplie facilement et j'espère que cet article vous sera utile.

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