Maison >développement back-end >Problème PHP >Comment interroger le nombre de valeurs identiques dans un tableau en php

Comment interroger le nombre de valeurs identiques dans un tableau en php

PHPz
PHPzoriginal
2023-04-19 11:29:081050parcourir

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!

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