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().