Maison >développement back-end >Problème PHP >Comment interroger le nombre de valeurs identiques dans un tableau en php
Dans le développement PHP, le traitement des tableaux est une tâche très courante, et pour un tableau volumineux et désordonné, nous devrons peut-être interroger le nombre de valeurs identiques qu'il contient. Cet article présentera en détail comment utiliser PHP pour interroger le nombre de valeurs identiques dans un tableau.
1. Utilisez la fonction array_count_values()
PHP fournit une fonction très pratique array_count_values(). Cette fonction peut compter le nombre d'occurrences de chaque élément dans le tableau et renvoyer un tableau associatif, où la clé représente la valeur dans le tableau. tableau. La valeur représente le nombre d’occurrences de la valeur dans le tableau. On peut simplement compter le nombre de valeurs identiques dans un tableau en se basant sur ce principe.
Ce qui suit est un exemple de code qui utilise la fonction array_count_values() pour compter le nombre de valeurs identiques dans un tableau :
$arr = array('apple', 'banana', 'orange', 'apple', 'apple', 'banana'); $countArr = array_count_values($arr); foreach($countArr as $key => $value) { echo $key . ':' . $value . '<br />'; }
Le résultat de sortie est :
apple:3 banana:2 orange:1
2. Utilisez la boucle foreach pour implémenter
Nous pouvons utilisez également la boucle foreach pour parcourir le tableau un par un. Prenez chaque élément et comptez ses occurrences dans le tableau. Le code est le suivant :
$arr = array('apple', 'banana', 'orange', 'apple', 'apple', 'banana'); $countArr = array(); foreach($arr as $val) { if(isset($countArr[$val])) { $countArr[$val]++; } else { $countArr[$val] = 1; } } foreach($countArr as $key => $value) { echo $key . ':' . $value . '<br />'; }
Le résultat de sortie est le même que ci-dessus.
3. Utilisez la fonction array_unique() et la fonction array_diff_assoc() pour y parvenir
Une autre façon est de combiner les fonctions array_unique() et array_diff_assoc() pour y parvenir, c'est-à-dire d'utiliser d'abord la fonction array_unique() pour supprimer les doublons, puis utilisez la fonction array_diff_assoc() Obtenez la différence entre le tableau d'origine et le tableau dédupliqué, et enfin ajoutez le résultat comme clé à un tableau vide, et comptez le nombre d'occurrences. Le code est le suivant :
$arr = array('apple', 'banana', 'orange', 'apple', 'apple', 'banana'); $uniqueArr = array_unique($arr); $diffArr = array_diff_assoc($arr, $uniqueArr); $countArr = array(); foreach($diffArr as $val) { if(isset($countArr[$val])) { $countArr[$val]++; } else { $countArr[$val] = 1; } } foreach($countArr as $key => $value) { echo $key . ':' . $value . '<br />'; }
Le résultat de sortie est le même que ci-dessus.
Résumé
Cet article présente trois méthodes pour interroger le nombre de valeurs identiques dans un tableau PHP, notamment en utilisant la fonction array_count_values(), en utilisant la boucle foreach et en utilisant la fonction array_unique() et la fonction array_diff_assoc(). Pour les tableaux plus petits, l’une ou l’autre méthode fonctionnera ; pour les tableaux plus grands, la troisième méthode sera plus rapide. Nous pouvons choisir une méthode qui nous convient en fonction de la situation réelle pour interroger la même valeur dans le tableau.
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!