PHP Handbuch
Zurück |  | Weiter

# count

(PHP 3, PHP 4, PHP 5)

count -- Zählt die Elemente einer Variable oder Attribute eines Objekts

## Beschreibung

int count ( mixed var [, int mode] )

Liefert die Anzahl von Elementen in var, welches typischerweise ein Array ist, da alles andere ein Element enthält.

Für Objekte, wenn die SPL installiert ist, gibt es die Möglichkeit das Interface Countable zu implementieren. Dieses Interface besitzt die Methode count(), die den Rückgabewert für den Aufruf von count() zurück liefert.

Ist var kein Array oder Objekt mit Interface Countable, wird 1 zurückgegeben (Ausnahme: count(`NULL`) ist gleich 0).

> Anmerkung: Anmerkung: Der Parameter mode wurde mit PHP 4.2.0 hinzugefügt.

Wenn der optionale Paramter mode auf `COUNT_RECURSIVE` (oder 1) gesetzt ist, wird count() rekursiv die Anzahl der Elemente ermittelt. Das ist besonders nützlich um alle Elemente eines mehrdimensionalen Arrays zu ermitteln. Der voreingestellte Wert von mode ist 0. count() erkennt keine endlose Rekursion.

Achtung
count() kann 0 zurückgeben wenn die Variable nicht gesetzt ist, aber sie könnte ebenfalls 0 zurückgeben, wenn eine Variable als leeres Array initialisiert wurde. Verwenden Sie isset() um zu testen, ob eine Variable gesetzt ist.

In der Sektion Arrays finden Sie eine detaillierte Erklärung, wie Arrays in PHP implementiert sind und wie sie benutzt werden.

Beispiel 1. count()
`<?php $a[0] = 1; $a[1] = 3; $a[2] = 5; $result = count($a); //$result == 3 $b[0] = 7; $b[5] = 9; $b[10] = 11; $result = count($b); // $result == 3 $result = count(null); // $result == 0 $result = count(false); // $result == 1 ?>`

Beispiel 2. Rekursives count() Beispiel (PHP >= 4.2.0)
`<?php $food = array('Obst' => array('Orange', 'Banane', 'Apfel'), 'Gemüse' => array('Karrotte', 'Kohl', 'Erbse')); // rekursiv zählen echo count($food, COUNT_RECURSIVE); // gibt 8 aus // normales zählen echo count($food); // gibt 2 aus ?>`

Siehe auch is_array(), isset() und strlen().

Zurück | Zum Anfang | Weiter
compact | Nach oben | current