count
Подсчитывает количество элементов в массиве или в объекте Countable
&reftitle.description;
intcountCountablearrayvalueintmodeCOUNT_NORMAL
Функция подсчитывает количество элементов в массиве, если в функцию передали массив.
Функция возвращает значение, которое вернул метод Countable::count,
если в функцию передали объект, который реализует интерфейс Countable.
&reftitle.parameters;
value
Массив или объект, который реализует интерфейс Countable.
mode
Функция count будет рекурсивно подсчитывать элементы массива,
если для необязательного параметра mode установили значение
COUNT_RECURSIVE (или 1).
Это, в частности, полезно для подсчёта элементов многомерных массивов.
Функция count умеет обнаруживать рекурсию, чтобы избежать
бесконечного цикла, но для каждого такого случая будет выдавать ошибку уровня
E_WARNING (если массив содержит себя
больше одного раза), и возвращать значение выше, чем ожидалось.
&reftitle.returnvalues;
Функция возвращает количество элементов в параметре value.
До PHP 8.0.0, если параметр не был ни массивом (&array;),
ни объектом (&object;), который реализует интерфейс Countable,
возвращалось значение 1,
если значение параметра value не было равно &null;,
тогда возвращалось значение 0.
&reftitle.changelog;
&Version;&Description;8.0.0
Теперь функция count выбрасывает
исключение TypeError, если в параметр
value передали недопустимый исчисляемый тип.
7.2.0
Теперь функция count будет выдавать предупреждение
о недопустимых исчисляемых типах, которые передали в параметр value.
&reftitle.examples;
Пример подсчёта элементов массива функцией count
]]>
&example.outputs;
Пример вызова функции count на значении с неисчисляемым типом,
которое не принадлежит объединению типов Countable|array (плохой пример — не делайте так)
]]>
&example.outputs;
Пример рекурсивного использования функции count
array('orange', 'banana', 'apple'),
'veggie' => array('carrot', 'collard', 'pea'));
// рекурсивный подсчёт
var_dump(count($food, COUNT_RECURSIVE));
// обычный подсчёт
var_dump(count($food));
?>
]]>
&example.outputs;
Объект, который реализует интерфейс Countable
]]>
&example.outputs;
&reftitle.seealso;
is_arrayissetemptystrlenis_countableМассивы