Array Funktionen
PHP Manual

count

(PHP 4, PHP 5, PHP 7)

countZählt alle Elemente eines Arrays oder etwas in einem Objekt

Beschreibung

int count ( mixed $array_or_countable [, int $mode = COUNT_NORMAL ] )

Zählt alle Elemente eines Arrays oder etwas in einem Objekt.

Wenn Sie die SPL installiert haben, können Sie in Objekten eine count()-Funktion nutzen, indem Sie das Interface Countable implementieren. Das Interface hat exakt eine Methode, nämlich Countable::count(), die den Rückgabewert der Funktion count() zurückliefert.

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

Parameter-Liste

array_or_countable

Ein Array oder Countable Objekt.

mode

Wenn der optionale Parameter mode auf COUNT_RECURSIVE (oder 1) gesetzt ist, wird count() rekursiv durch das Array zählen. Dies kann besonders nützlich sein, um alle Elemente eines mehrdimensionalen Arrays zu zählen.

Achtung

count() kann Rekursion erkennen, um eine Endlosschleife zu vermeiden, wird aber jedes Mal, wenn es das tut, ein E_WARNING erzeugen (im Fall, dass das Array sich selbst mehr als einmal enthält), und gibt dann eine höhere Anzahl zurück als möglicherweise erwartet.

Rückgabewerte

Liefert die Anzahl von Elementen in array_or_countable.

Ist der Parameter kein Array oder Objekt mit implementiertem Countable Interface, wird 1 zurückgegeben. Es besteht eine Ausnahme, wenn var NULL ist, wird 0 zurückgegeben.

Achtung

count() gibt 0 zurück, wenn die Variable nicht gesetzt ist, aber sie gibt ebenfalls 0 zurück, wenn die Variable als leeres Array initialisiert wurde. Verwenden Sie isset() um zu testen, ob eine Variable gesetzt ist.

Beispiele

Beispiel #1 count()-Beispiel

<?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
$food 
= array('Obst' => array('Orange''Banane''Apfel'),
              
'Gemüse' => array('Karotte''Kohl''Erbse'));

// rekursiv zählen
echo count($foodCOUNT_RECURSIVE); // gibt 8 aus

// normales zählen
echo count($food); // gibt 2 aus

?>

Siehe auch


Array Funktionen
PHP Manual