Forum und email

count

(PHP 4, PHP 5)

count — Conta o número de elementos de uma variável, ou propriedades de um objeto

Descrição

int count ( mixed $var [, int $mode ] )

Retorna o número de elementos de var , que normalmente é um array (uma vez que qualquer outra coisa terá apenas um elemento).

Para objetos, se você tem SPL instalada, você pode fazer um gancho na count() implementando a interface Countable. A interface tem exatamente um método, count(), que retorna o valor retornado para função count().

Se var não for um array ou um objeto, com a interface Countable implementada, 1 será retornado. Há uma exceção, se var é NULL, 0 é retornado.

Nota: O parâmetro opcional mode esta disponível apartir do PHP 4.2.0.

Se o parâmetro opcional mode for COUNT_RECURSIVE (ou 1), a função count() irá recursivamente contar a matriz. Isto é particularmente util para contar elementos em matriz multidimensional. O valor padrão para mode é 0. count() não detecta infinita recursão.

Cuidado

count() pode retornar 0 para uma variável que não existe, mas também pode retornar 0 para uma variável que tenha sido inicializada como um array vazio. Use isset() para checar se a variável existe.

Por favor, veja a sessão Array do manual para uma explicação mais detalhada sobre como os arrays são implementados e utilizados no PHP.

Example#1 Exemplo de 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
?>

Example#2 Uso recursivo da função count() (PHP >= 4.2.0)

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

Veja também is_array(), isset() e strlen().