PHP Manualen
forrige |  | næste

# count

(PHP 3, PHP 4, PHP 5)

count -- Tæller antallet af elementer i et array eller antallet af objektvariabler

## Beskrivelse

int count ( mixed var [, int mode] )

Returner antallet af elementer i en var, hvilket ofte er et array, da alle andre type kun har et element.

Ved klasser vil du, hvis du har SPL installeret, kunne gå ind og påvirke count() ved at laver et interface der hedder Countable. Det interface skal kun have en metode, count(), hvilket returnere værdien i stedet for den værdi den almindelige count() ville gøre.

Hvis var ikke er et array eller klasse med et Countable interface, vil 1 blive returneret. Der er en undtagelse, hvilket er hvis var er `NULL`, da funktionen så vil returnere 0.

> Bemærk: Den valgfrie paramenter, mode, vil kunne bruges fra PHP 4.2.0.

Hvis den valgfrie paramenter, mode, er sat til `COUNT_RECURSIVE` (eller 1), vil count() rekursiv tælle arrayet. Det er en fordel hvis man vil tælle alle elementer i et multidimensionel array. Standardværdien for mode er 0. count() tjekker ikke for uendelig gennemløb.

Pas på
count() vil returner 0 for en variabel som ikke er sat, men returner også 0 for en variabel som er blevet sat med et tomt array. Brug isset() for at teste om en variabel er sat.

Se Array sektionen af manualen for at få en detaljeret forklaring om hvordan arrays er bygget ind og brugt i PHP.

Eksempel 1. count() eksempel

`<?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 ?>`

Eksempel 2. rekursiv count() eksempel (PHP >= 4.2.0)

`<?php $food = array('fruits' => array('orange', 'banana', 'apple'), 'veggie' => array('carrot', 'collard', 'pea')); // rekursiv count echo count($food, COUNT_RECURSIVE); // output 8 // normal count echo count($food); // output 2 ?>`

Se også is_array(), isset() og strlen().

forrige | hjem | næste
compact | op | current