Maison  >  Article  >  développement back-end  >  Trouver la même valeur dans les tableaux php

Trouver la même valeur dans les tableaux php

PHPz
PHPzoriginal
2023-05-19 10:31:07922parcourir

PHP, en tant que langage de programmation open source populaire, peut gérer efficacement une série de problèmes, dont l'un concerne le traitement des tableaux, PHP fournit également de nombreuses fonctions puissantes. Dans cet article, nous verrons principalement comment retrouver les mêmes éléments dans un tableau.

Méthodes pour retrouver les mêmes éléments

En PHP, il existe différentes méthodes pour retrouver les mêmes éléments dans un tableau. Nous présenterons ensuite plusieurs méthodes de base :

Méthode 1 : Utiliser la fonction array_count_values ​​

Le array_count_values ​​​La fonction peut être très simple. Il est pratique de trouver le nombre d'occurrences de chaque élément du tableau, puis il suffit de filtrer les éléments dont les occurrences sont supérieures à 1. L'exemple de code est le suivant :

$arr = array(1,2,3,4,5,3,2,1,2,5,5);

$counts = array_count_values($arr);

foreach($counts as $key=>$value){
    
    if($value > 1){
        
         echo "元素".$key."出现了".$value."次"."<br/>";
         
    }
}

Méthode 2 : utilisez les fonctions array_unique et array_diff

La fonction array_unique peut renvoyer le tableau après avoir supprimé les éléments en double, tandis que la fonction array_diff peut renvoyer la différence entre les deux tableaux. Grâce à la combinaison de ces deux fonctions, on peut retrouver les mêmes éléments dans le tableau d’origine. L'exemple de code est le suivant :

$arr = array(1,2,3,4,5,3,2,1,2,5,5);

$unique_arr = array_unique($arr);

$diff_arr = array_diff_assoc($arr,$unique_arr);

foreach($diff_arr as $value){
    
    echo "元素".$value."是相同的"."<br/>";
}

Méthode 3 : utilisez la fonction array_intersect

La fonction array_intersect renvoie l'intersection des deux tableaux, puis utilise la fonction array_unique pour supprimer les doublons afin d'obtenir les mêmes éléments. L'exemple de code est le suivant :

$arr1 = array(1,2,3,4,5);

$arr2 = array(3,4,5,6,7);

$intersect_arr = array_intersect($arr1,$arr2);

$unique_arr = array_unique($intersect_arr);

foreach($unique_arr as $value){
    
    echo "元素".$value."是相同的"."<br/>";
}

Méthode 4 : Parcourir le tableau

La méthode la plus simple et la plus primitive consiste à parcourir directement le tableau à travers une boucle pour trouver les mêmes éléments. L'exemple de code est le suivant :

$arr = array(1,2,3,4,5,3,2,1,2,5,5);

for($i=0;$i<count($arr);$i++){
    
    for($j=$i+1;$j<count($arr);$j++){
        
        if($arr[$i] == $arr[$j]){
            
            echo "元素".$arr[$i]."和元素".$arr[$j]."是相同的"."<br/>";
        }
    }
}

Il existe quatre méthodes courantes ci-dessus. En fait, il existe de nombreuses méthodes de fonctionnement des tableaux, et de nombreuses méthodes efficaces et concises peuvent être utilisées.

Choses et précautions

Pour le problème de trouver les mêmes éléments, nous avons besoin d'une certaine réflexion et précautions :

  1. Déterminer la méthode de solution : Parmi les différentes méthodes de solution, il est nécessaire de déterminer la méthode la plus appropriée en fonction des besoins réels. Par exemple, si vous avez besoin de trouver le nombre d'occurrences, vous devez choisir d'utiliser la fonction array_count_values ​​​​​​.
  2. Considérez la taille du tableau : si le tableau est très grand, nous aurons peut-être besoin d'un moyen plus efficace de le gérer pour éviter de fonctionner trop longtemps ou de consommer trop de mémoire.
  3. Gestion des cas particuliers : dans certains cas, il peut y avoir des éléments en double dans le tableau, mais nous n'avons pas besoin de ces éléments en double. À ce stade, vous pouvez utiliser la fonction array_unique pour supprimer les doublons.
  4. Optimisation du nombre de boucles : Lorsqu'on utilise une boucle pour parcourir un tableau, il faut essayer de réduire le nombre de boucles. Par exemple, lors d'une boucle dans la couche externe, on peut passer de 0 à la longueur du tableau -. 1, et lors d'une boucle dans la couche interne, nous pouvons partir du point suivant dans la boucle externe, commencer à la longueur du tableau -1.

Résumé

Traiter les mêmes éléments dans un tableau est une opération très courante en PHP. Nous pouvons résoudre ce problème de plusieurs manières. Lors du choix d'une méthode de solution, la méthode optimale doit être sélectionnée en fonction des besoins réels et de la taille du tableau. En outre, il existe de nombreuses techniques et méthodes pour faire fonctionner les baies, qui doivent être continuellement mises en pratique et résumées dans la programmation réelle.

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