count

(PHP 4, PHP 5)

countПодсчитывает количество элементов массива или что-то в объекте

Описание

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

Подсчитывает количество элементов массива или что-то в объекте.

Для объектов, если у вас включена поддержка SPL, вы можете перехватить count(), реализуя интерфейс Countable. Этот интерфейс имеет ровно один метод, Countable::count(), который возвращает значение функции count().

Пожалуйста, смотрите раздел "Массивы" в этом руководстве для более детального представления о реализации и использовании массивов в PHP.

Список параметров

var

Массив или объект.

mode

Если необязательный параметр mode установлен в COUNT_RECURSIVE (или 1), count() будет рекурсивно подсчитывать количество элементов массива. Это особенно полезно для подсчёта всех элементов многомерных массивов. count() не обнаруживает бесконечную рекурсию.

Возвращаемые значения

Возвращает количество элементов в var. Если var не является массивом или объектом, реализующим интерфейс Countable, будет возвращена 1. За одним исключением: если var - NULL, то будет возвращён 0.

Предостережение

count() может возвратить 0 для переменных, которые не установлены, но также может возвратить 0 для переменных, которые инициализированы пустым массивом. Используйте функцию isset() для того, чтобы протестировать, установлена ли переменная.

Список изменений

Версия Описание
4.2.0 Добавлен необязательный параметр mode.

Примеры

Пример #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
?>

Пример #2 Пример рекурсивного использования count()

<?php
$food 
= array('fruits' => array('orange''banana''apple'),
              
'veggie' => array('carrot''collard''pea'));

// рекурсивный count
echo count($foodCOUNT_RECURSIVE); // выводит 8

// обычный count
echo count($food); // выводит 2

?>

Смотрите также

  • is_array() - Определяет, является ли переменная массивом
  • isset() - Определяет, была ли установлена переменная значением отличным от NULL
  • strlen() - Возвращает длину строки


Участник рейтинга Тэглайн 2010