Home Backend Development PHP Problem How to count the same data type in an array in php

How to count the same data type in an array in php

Apr 24, 2023 pm 03:50 PM

In PHP, counting the number of the same data type in an array is a very common requirement. For example, count the number of integer type elements in an array, or count the number of occurrences of string type elements in an array. This article will introduce the method of implementing the same data type of statistical array in PHP.

Method 1: Use count and is_numeric functions

First, we can use PHP's built-in count function to get the array length, and then use the is_numeric function to determine whether the element is a numeric type. The code is as follows:

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

The above code uses a foreach loop to traverse each element in the array, and uses the is_numeric function to determine whether the element is a numeric type. If so, increase the value of the $count variable. Finally, just return the $count variable. This function can only count the number of elements of numeric types. If you want to count the number of elements of other types, you need to modify the is_numeric function to be a judgment function for other types.

Method 2: Use array_filter and gettype functions

Another method is to use the array_filter function and gettype function in PHP. The array_filter function can be used to filter elements in an array, and the gettype function can obtain the type of elements. The code is as follows:

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

The above code first calls the array_filter function to filter out all elements of type $type, and then uses the count function to obtain the filtered array length.

Method 3: Use array_reduce and gettype functions

Another method is to use array_reduce function and gettype function. The array_reduce function can be used to execute a callback on all elements of an array, reducing them to a single value. The code is as follows:

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

The above code uses the array_reduce function to traverse each element in the array. If the type of the element is $type, add 1 to the $count variable. Finally, just return the $count variable.

Summary

The above are three methods for counting the same data type of arrays in PHP. Each of these three methods is different, and which one you choose depends on your specific needs and coding style. If you only need to count the number of elements of one data type, method one is a simple solution. If you need to calculate multiple types, or want a clearer code structure, you can choose method two or three.

The above is the detailed content of How to count the same data type in an array in php. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Hot Topics

Java Tutorial
1653
14
PHP Tutorial
1251
29
C# Tutorial
1224
24