Count all elements in an array, or something in an object (original) (raw)
(PHP 4, PHP 5, PHP 7)
count — Count all elements in an array, or something in an object
Description
count ( mixed $array_or_countable
[, int $mode
= COUNT_NORMAL ] ) : int
For objects, if you haveSPL installed, you can hook intocount() by implementing interfaceCountable. The interface has exactly one method,Countable::count(), which returns the return value for thecount() function.
Please see the Array section of the manual for a detailed explanation of how arrays are implemented and used in PHP.
Parameters
array_or_countable
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.
Caution
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.
Return Values
Returns the number of elements in array_or_countable
. When the parameter is neither an array nor an object with implemented Countable interface,1
will be returned. There is one exception, if array_or_countable
is NULL
,0
will be returned.
Examples
Example #1 count() example
<?php $a[0] = 1; $a[1] = 3; $a[2] = 5; var_dump(count($a));$b[0] = 7; $b[5] = 9; $b[10] = 11; var_dump(count($b));var_dump(count(null));var_dump(count(false)); ?>
The above example will output:
int(3) int(3)
Warning: count(): Parameter must be an array or an object that implements Countable in … on line 12 // as of PHP 7.2 int(0)
Warning: count(): Parameter must be an array or an object that implements Countable in … on line 14 // as of PHP 7.2 int(1)
Example #2 Recursive count() example
`<?php
$food = array('fruits' => array('orange', 'banana', 'apple'),
'veggie' => array('carrot', 'collard', 'pea'));// recursive count
echo count($food, COUNT_RECURSIVE); // output 8
// normal count
echo count($food); // output 2?> `
Changelog
Version | Description |
---|---|
7.2.0 | count() will now yield a warning on invalid countable types passed to the array_or_countable parameter. |
See Also
- is_array() - Finds whether a variable is an array
- isset() - Determine if a variable is declared and is different than NULL
- empty() - Determine whether a variable is empty
- strlen() - Get string length
- is_countable() - Verify that the contents of a variable is a countable value