Heim > Backend-Entwicklung > PHP-Problem > So fragen Sie die Anzahl identischer Elemente in einem Array in PHP ab

So fragen Sie die Anzahl identischer Elemente in einem Array in PHP ab

PHPz
Freigeben: 2023-04-24 15:28:26
Original
1634 Leute haben es durchsucht

In PHP können wir ganz einfach die Anzahl identischer Elemente in einem Array abfragen. In diesem Artikel stellen wir vor, wie Sie die integrierten und benutzerdefinierten Funktionen von PHP verwenden, um die Anzahl identischer Elemente in einem Array abzufragen.

Methode 1: Verwenden Sie die in PHP integrierte Funktion array_count_values

Die Funktion array_count_values ​​​​in PHP kann die Anzahl der Vorkommen jedes Elements in einem Array zählen. Diese Funktion gibt ein neues Array zurück, wobei die Schlüssel die Werte der Elemente im übergebenen Array sind und die Werte die Häufigkeit angeben, mit der dieses Element im Array erscheint.

Das Folgende ist ein Beispiel:

$array = array("apple", "banana", "apple", "pear", "banana", "orange");
$count = array_count_values($array);
print_r($count);
Nach dem Login kopieren

Das Ausgabeergebnis ist:

Array
(
    [apple] => 2
    [banana] => 2
    [pear] => 1
    [orange] => 1
)
Nach dem Login kopieren
Nach dem Login kopieren

Wie aus dem Ausgabeergebnis ersichtlich ist, haben wir die Anzahl der gleichen Elemente im Array erfolgreich abgefragt.

Methode 2: Verwenden Sie eine benutzerdefinierte Funktion

Zusätzlich zur Verwendung der in PHP integrierten Funktion array_count_values ​​können wir auch eine benutzerdefinierte Funktion schreiben, um die Anzahl identischer Elemente in einem Array abzufragen. Hier ist eine einfache benutzerdefinierte Funktion:

function count_same_elements($array) {
    $count = array();
    foreach ($array as $value) {
        if (isset($count[$value])) {
            $count[$value]++;
        } else {
            $count[$value] = 1;
        }
    }
    return $count;
}
Nach dem Login kopieren

Das Implementierungsprinzip dieser Funktion ähnelt der Funktion array_count_values ​​​​. Zuerst erstellen wir ein leeres Array $count, um die Anzahl der Vorkommen jedes Elements zu speichern. Anschließend durchlaufen wir das übergebene Array $array und prüfen für jedes Element im Array, ob das Element bereits im Array $count vorhanden ist. Wenn es existiert, erhöhen wir die Anzahl des Elements um eins; andernfalls fügen wir das Element dem $count-Array hinzu und setzen die Anzahl auf 1.

So verwenden Sie die benutzerdefinierte Funktion count_same_elements:

$array = array("apple", "banana", "apple", "pear", "banana", "orange");
$count = count_same_elements($array);
print_r($count);
Nach dem Login kopieren

Die Ausgabe lautet:

Array
(
    [apple] => 2
    [banana] => 2
    [pear] => 1
    [orange] => 1
)
Nach dem Login kopieren
Nach dem Login kopieren

Wir können sehen, dass die Ausgabe der benutzerdefinierten Funktion count_same_elements mit der Funktion array_count_values ​​​​gleich ist.

Zusammenfassung

In PHP ist die Abfrage der Anzahl identischer Elemente in einem Array ein relativ häufiger Vorgang. Wir können die in PHP integrierte Funktion array_count_values ​​verwenden oder eine benutzerdefinierte Funktion schreiben, um diese Funktion zu erreichen. Unabhängig davon, welche Methode Sie verwenden, können Sie die Anzahl identischer Elemente in einem Array problemlos abfragen und so Array-Daten besser verarbeiten.

Das obige ist der detaillierte Inhalt vonSo fragen Sie die Anzahl identischer Elemente in einem Array in PHP ab. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage