En PHP, lors du traitement des tableaux, nous devons souvent découvrir les éléments à haute fréquence dans le tableau (c'est-à-dire les éléments qui apparaissent le plus). PHP fournit des fonctions intégrées pour nous aider à implémenter cette fonction, où array_count_values () et array_keys () sont deux fonctions très utiles.
Cet article présentera comment obtenir des éléments à haute fréquence dans un tableau via ces deux fonctions et le démontrez par exemple de code.
La fonction array_count_values () peut renvoyer un tableau associatif, la clé est les éléments du tableau d'entrée et la valeur est le nombre de fois que ces éléments apparaissent dans le tableau d'origine.
<?php
// Exemple de tableau
$array = array("apple", "banana", "apple", "orange", "banana", "apple");
// utiliser array_count_values Obtenez le nombre d'occurrences d'un élément
$counts = array_count_values($array);
// Nombre de fois que l'élément de sortie apparaît
print_r($counts);
?>
Résultat de sortie:
Array
(
[apple] => 3
[banana] => 2
[orange] => 1
)
Dans cet exemple, nous pouvons voir que la fonction array_count_values () compte avec succès le nombre d'occurrences de chaque élément dans le tableau.
Ensuite, nous voulons trouver l'élément qui apparaît le plus. Pour ce faire, nous pouvons combiner array_count_values () et array_keys () pour y parvenir.
<?php
// Exemple de tableau
$array = array("apple", "banana", "apple", "orange", "banana", "apple");
// Obtenez le nombre d'occurrences d'un élément
$counts = array_count_values($array);
// Trouver la valeur maximale
$maxCount = max($counts);
// Obtenez l'élément dont le nombre d'occurrence est égal à la valeur maximale
$mostFrequent = array_keys($counts, $maxCount);
// Éléments de fréquence à haute fréquence
print_r($mostFrequent);
?>
Résultat de sortie:
Array
(
[0] => apple
)
Dans cet exemple, nous comptons d'abord le nombre d'occurrences de chaque élément dans le tableau via array_count_values () , puis utilisons max () pour obtenir les occurrences maximales, puis utilisons array_keys () pour obtenir tous les éléments dont les occurrences sont égales au maximum. Dans cet exemple, "Apple" apparaît la plupart du temps, il s'agit donc d'un élément haute fréquence.
Si plusieurs éléments du tableau apparaissent le même nombre de fois et sont tous les éléments de fréquence les plus élevés, Array_Keys () renvoie un tableau contenant tous ces éléments.
<?php
// Exemple de tableau,Plusieurs éléments à haute fréquence
$array = array("apple", "banana", "apple", "orange", "banana", "apple", "orange");
// Obtenez le nombre d'occurrences d'un élément
$counts = array_count_values($array);
// Trouver la valeur maximale
$maxCount = max($counts);
// Obtenez l'élément dont le nombre d'occurrence est égal à la valeur maximale
$mostFrequent = array_keys($counts, $maxCount);
// Éléments de fréquence à haute fréquence
print_r($mostFrequent);
?>
Résultat de sortie:
Array
(
[0] => apple
[1] => banana
)
Dans cet exemple, "pomme" et "banane" sont les éléments les plus courants, ils sont donc tous deux considérés comme des éléments à haute fréquence.
En utilisant les fonctions array_count_values () et array_keys () , nous pouvons facilement trouver des éléments à haute fréquence dans le tableau. Tout d'abord, nous utilisons array_count_values () pour compter le nombre d'occurrences d'éléments, puis utilisons les fonctions max () et array_keys () pour trouver et retourner l'élément avec le plus d'occurrences. Pour les cas où il y a plusieurs éléments à haute fréquence, Array_keys () renvoie tous ces éléments.