Zlicza ilość elementów w tablicy lub pól obiektu. Zwraca ilość elementów w parametrze zmienna , która zazwyczaj będzie tablicą, jako że wszystko inne będzie miało jeden element.
Dla obiektów, jeśli zainstalowane zostało rozszerzenie SPL, możliwe jest podłączenie do count() poprzez zaimplementowanie interfejsu Countable. Interfejs ten posiada dokładnie jedną metodę, count(), która zwraca wartość, którą ma zwrócić funkcja count().
Jeśli zmienna nie jest tablicą ani obiektem z zaimplementowanym interfejsem Countable, to zwracana będzie wartość 1. Istnieje jeden wyjątek - jeśli zmienna będzie miała wartość NULL, zwrócona zostanie wartość 0.
Informacja: Opcjonalny argument tryb dostępny jest od wersji PHP 4.2.0.
Jeśli opcjonalny argument tryb ustawiony jest na COUNT_RECURSIVE (lub 1), count() będzie zliczał elementy rekurencyjnie. Jest to przydatne przy zliczaniu ilości wszystkich elementów tablicy wielowymiarowej. Domyślna wartość argumentu tryb to 0. count() nie wykrywa nieskończonej rekurencji.
count() może zwrócić 0 dla zmiennej, która nie została zainicjalizowana, ale możę zwrócić także 0 dla zmiennej która została zainicjalizowana pustą tablicą. Użyj isset() aby sprawdzić czy zmienna została ustawiona.
Kompatybilność: PHP4, PHP5.
Listing
<?php
$a[0] = 1;
$a[1] = 3;
$a[2] = 5;
$wynik = count ($a);
// $wynik == 3
$b[0] = 7;
$b[5] = 9;
$b[10] = 11;
$wynik = count ($b);
// $wynik == 3
$wynik = count(null);
// $wynik == 0
$wynik = count(false);
// $wynik = 1
?>
//#2 Przykład rekurencyjnego przetwarzania przez count() (PHP >= 4.2.0)
$jedzenie = array('owoce' => array('pomarańcza', 'banan', 'jabłko'),
'warzywa' => array('marchewka', 'kukurydza', 'groszek'));
// zliczanie rekurencyjne
echo count($jedzenie, COUNT_RECURSIVE); // wyświetli 8
// normal count
echo count($jedzenie); // wyświetli 2
?>
Ranga: Administrator serwisu Punktów: 0