Trois façons d'implémenter la fonction array_diff() en PHP pour comparer les différences de tableaux

不言
Libérer: 2023-04-04 16:26:01
avant
3310 Les gens l'ont consulté

Ce que cet article vous apporte concerne les trois méthodes d'implémentation de la fonction array_diff() en PHP pour comparer les différences de tableaux. J'espère qu'il a une certaine valeur de référence. vous aidera.

Ce qui suit est une brève introduction à la fonction array_diff() qui compare la différence entre deux tableaux en PHP.

Il existe un array_diff() dans la fonction intégrée PHP : cela signifie comparer les valeurs clés de deux tableaux et renvoyer la différence.

Ce qui suit consiste à implémenter la différence définie via le parcours de tableau :

Il y a d'abord deux tableaux différents $arr_1, $arr_2 :

Une méthode :

function fun($arr_1,$arr_2)
{
       foreach ($arr_1 as $key => $val)
      {
              $bool = false;
              foreach ($arr_2 as $k => $v)
             {
                   if($bool = ($val == $v))
                  {
                           break;
                   }
             }
             if(!$bool)
            {
                 $diff[$key] = $val;
             }
       }
}
Copier après la connexion

Bien que cette méthode puisse réaliser la différence entre les tableaux, si la longueur du tableau atteint une certaine longueur, l'efficacité n'est pas optimiste.

Deux méthodes :

foreach ($arr_1 as $key => $val)
{
    if(in_array($val,$arr_2))
    {
            unset($arr_1[$key]);
    }
}
Copier après la connexion

Cette méthode est dite sur d'autres blogs comme étant comparable à array_diff().

Trois façons :

Après avoir inversé la valeur de la clé du tableau arr_2 via "array_flip();", déterminez si la valeur du tableau arr_1 est dans la clé de arr_2

$arr_2 = array_flip($arr_2);
foreach ($arr_1 as $key => $val)
{
    if(isset($arr_2[$val]))
    {
            unset($arr_1[$key]);
    }
}
Copier après la connexion

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!

Étiquettes associées:
source:cnblogs.com
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!