Heim  >  Artikel  >  Backend-Entwicklung  >  So zählen Sie dieselben Datentypen in einem Array in PHP

So zählen Sie dieselben Datentypen in einem Array in PHP

PHPz
PHPzOriginal
2023-04-24 15:50:43415Durchsuche

In PHP ist das Zählen der Anzahl desselben Datentyps in einem Array eine sehr häufige Anforderung. Zählen Sie beispielsweise die Anzahl der Elemente vom Typ „Integer“ in einem Array oder die Anzahl der Vorkommen von Elementen vom Typ „String“ in einem Array. In diesem Artikel wird die Methode zur Implementierung desselben Datentyps eines statistischen Arrays in PHP vorgestellt.

Methode 1: Verwenden Sie die Funktionen „count“ und „is_numeric“

Zunächst können wir die integrierte Zählfunktion von PHP verwenden, um die Array-Länge zu ermitteln, und dann die Funktion „is_numeric“ verwenden, um zu bestimmen, ob das Element vom numerischen Typ ist. Der Code lautet wie folgt:

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

Der obige Code verwendet eine foreach-Schleife, um jedes Element im Array zu durchlaufen, und verwendet die Funktion is_numeric, um zu bestimmen, ob das Element ein numerischer Typ ist. Wenn ja, erhöhen Sie den Wert der Variablen $count. Zum Schluss geben Sie einfach die Variable $count zurück. Diese Funktion kann nur die Anzahl der Elemente numerischer Typen zählen. Wenn Sie die Anzahl der Elemente anderer Typen zählen möchten, müssen Sie die Funktion is_numeric so ändern, dass sie eine Beurteilungsfunktion für andere Typen ist.

Methode 2: Verwenden Sie die Funktionen array_filter und gettype.

Eine andere Methode besteht darin, die Funktionen array_filter und gettype in PHP zu verwenden. Die Funktion array_filter kann zum Filtern von Elementen in einem Array verwendet werden, und die Funktion gettype kann den Typ der Elemente ermitteln. Der Code lautet wie folgt:

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

Der obige Code ruft zunächst die Funktion array_filter auf, um alle Elemente vom Typ $type herauszufiltern, und verwendet dann die Funktion count, um die gefilterte Array-Länge zu erhalten.

Methode 3: Verwenden Sie die Funktionen array_reduce und gettype.

Eine andere Methode ist die Verwendung der Funktionen array_reduce und gettype. Mit der Funktion array_reduce kann ein Rückruf für alle Elemente eines Arrays ausgeführt und diese auf einen einzigen Wert reduziert werden. Der Code lautet wie folgt:

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

Der obige Code verwendet die Funktion array_reduce, um jedes Element im Array zu durchlaufen. Wenn der Typ des Elements $type ist, addieren Sie 1 zur Variablen $count. Zum Schluss geben Sie einfach die Variable $count zurück.

Zusammenfassung

Die oben genannten sind drei Methoden zum Zählen desselben Datentyps von Arrays in PHP. Jede dieser drei Methoden ist anders und welche Sie wählen, hängt von Ihren spezifischen Anforderungen und Ihrem Codierungsstil ab. Wenn Sie nur die Anzahl der Elemente eines Datentyps zählen müssen, ist Methode eins eine einfache Lösung. Wenn Sie mehrere Typen berechnen müssen oder eine klarere Codestruktur wünschen, können Sie Methode zwei oder drei wählen.

Das obige ist der detaillierte Inhalt vonSo zählen Sie dieselben Datentypen in einem Array in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn