Maison  >  Article  >  développement back-end  >  Comment compter le même type de données dans un tableau en php

Comment compter le même type de données dans un tableau en php

PHPz
PHPzoriginal
2023-04-24 15:50:43414parcourir

En PHP, compter le nombre de données du même type dans un tableau est une exigence très courante. Par exemple, comptez le nombre d'éléments de type entier dans un tableau ou comptez le nombre d'occurrences d'éléments de type chaîne dans un tableau. Cet article présentera la méthode d'implémentation du même type de données de tableau statistique en PHP.

Méthode 1 : utiliser les fonctions count et is_numeric

Tout d'abord, nous pouvons utiliser la fonction count intégrée de PHP pour obtenir la longueur du tableau, puis utiliser la fonction is_numeric pour déterminer si l'élément est de type numérique. Le code est le suivant :

function countNumerics($arr) {
    $count = 0;
    foreach ($arr as $el) {
        if (is_numeric($el)) {
            $count++;
        }
    }
    return $count;
}

Le code ci-dessus utilise une boucle foreach pour parcourir chaque élément du tableau et utilise la fonction is_numeric pour déterminer si l'élément est de type numérique. Si tel est le cas, augmentez la valeur de la variable $count. Enfin, renvoyez simplement la variable $count. Cette fonction ne peut compter que le nombre d'éléments de types numériques. Si vous souhaitez compter le nombre d'éléments d'autres types, vous devez modifier la fonction is_numeric pour qu'elle soit une fonction de jugement pour les autres types.

Méthode 2 : utilisez les fonctions array_filter et gettype

Une autre méthode consiste à utiliser la fonction array_filter et la fonction gettype en PHP. La fonction array_filter peut être utilisée pour filtrer les éléments d'un tableau et la fonction gettype peut obtenir le type d'éléments. Le code est le suivant :

function countType($arr, $type) {
    return count(array_filter($arr, function ($el) use ($type) {
        return gettype($el) == $type;
    }));
}

Le code ci-dessus appelle d'abord la fonction array_filter pour filtrer tous les éléments de type $type, puis utilise la fonction count pour obtenir la longueur du tableau filtré.

Méthode 3 : utilisez les fonctions array_reduce et gettype

Une autre méthode consiste à utiliser la fonction array_reduce et la fonction gettype. La fonction array_reduce peut être utilisée pour exécuter un rappel sur tous les éléments d'un tableau, les réduisant à une seule valeur. Le code est le suivant :

function countType($arr, $type) {
    return array_reduce($arr, function ($count, $el) use ($type) {
        return $count + (gettype($el) == $type);
    }, 0);
}

Le code ci-dessus utilise la fonction array_reduce pour parcourir chaque élément du tableau, et si le type de l'élément est $type, ajoutez 1 à la variable $count. Enfin, renvoyez simplement la variable $count.

Résumé

Ci-dessus sont trois méthodes pour compter le même type de données de tableaux en PHP. Chacune de ces trois méthodes est différente et celle que vous choisissez dépend de vos besoins spécifiques et de votre style de codage. Si vous n’avez besoin de compter que le nombre d’éléments d’un type de données, la première méthode est une solution simple. Si vous devez calculer plusieurs types ou si vous souhaitez une structure de code plus claire, vous pouvez choisir la méthode deux ou trois.

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