Maison > développement back-end > tutoriel php > Comment puis-je compter efficacement les occurrences de valeurs spécifiques dans un tableau PHP ?

Comment puis-je compter efficacement les occurrences de valeurs spécifiques dans un tableau PHP ?

DDD
Libérer: 2024-12-01 05:52:11
original
339 Les gens l'ont consulté

How Can I Efficiently Count Occurrences of Specific Values in a PHP Array?

Comptage des valeurs dans un tableau à l'aide de Array_count_values

Lorsque vous travaillez avec des tableaux, il est souvent nécessaire de compter l'occurrence de valeurs spécifiques. Par exemple, considérons un tableau contenant à la fois des valeurs vides et non vides :

$array = array('', '', 'other', '', 'other');
Copier après la connexion

L'objectif est de déterminer efficacement le nombre de valeurs vides dans le tableau, en particulier pour les tableaux plus grands contenant des centaines d'éléments.

Dans un premier temps, nous pourrions envisager une itération simple :

function without($array) {
    $counter = 0;
    for($i = 0, $e = count($array); $i < $e; $i++) {
        if(empty($array[$i])) {
            $counter += 1;
        }
    }
    return $counter;
}
Copier après la connexion

Cependant, cette approche peut être inefficace pour les tableaux plus grands. PHP propose une solution plus optimisée en utilisant la fonction array_count_values. Cette fonction prend un tableau en entrée et renvoie un tableau avec des clés représentant les valeurs du tableau d'entrée et des valeurs représentant le nombre de chaque valeur.

$counts = array_count_values($array);
Copier après la connexion

Le résultat serait :

array(
    '' => 3,
    'other' => 2
)
Copier après la connexion

Pour compter le nombre de valeurs vides, accédez simplement à la clé correspondante :

$blank_count = $counts[''];
Copier après la connexion

Cette approche est nettement plus efficace que la méthode itérative, notamment pour les grands tableaux.

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!

source:php.cn
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