count Counts all elements in an array or in a Countable object &reftitle.description; intcount Countablearrayvalue intmodeCOUNT_NORMAL Counts all elements in an array when used with an array. When used with an object that implements the Countable interface, it returns the return value of the method Countable::count. &reftitle.parameters; value An array or Countable object. mode If the optional mode parameter is set to COUNT_RECURSIVE (or 1), count will recursively count the array. This is particularly useful for counting all the elements of a multidimensional array. count can detect recursion to avoid an infinite loop, but will emit an E_WARNING every time it does (in case the array contains itself more than once) and return a count higher than may be expected. &reftitle.returnvalues; Returns the number of elements in value. Prior to PHP 8.0.0, if the parameter was neither an &array; nor an &object; that implements the Countable interface, 1 would be returned, unless value was &null;, in which case 0 would be returned. &reftitle.changelog; &Version; &Description; 8.0.0 count will now throw TypeError on invalid countable types passed to the value parameter. 7.2.0 count will now yield a warning on invalid countable types passed to the value parameter. &reftitle.examples; <function>count</function> example ]]> &example.outputs; <function>count</function> non Countable|array example (bad example - don't do this) ]]> &example.outputs; &example.outputs.72; &example.outputs.8; Recursive <function>count</function> example array('orange', 'banana', 'apple'), 'veggie' => array('carrot', 'collard', 'pea')); // recursive count var_dump(count($food, COUNT_RECURSIVE)); // normal count var_dump(count($food)); ?> ]]> &example.outputs; <interfacename>Countable</interfacename> object ]]> &example.outputs; &reftitle.seealso; is_array isset empty strlen is_countable Arrays