本文整理汇总了PHP中arr::count方法的典型用法代码示例。如果您正苦于以下问题:PHP arr::count方法的具体用法?PHP arr::count怎么用?PHP arr::count使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类arr
的用法示例。
在下文中一共展示了arr::count方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: count
/**
* Returns the number of elements in `$X`
*
* Additionally:
*
* + If `$X` is uncountable, `1` is returned.
* + If `$X` is `null`, `0` is returned.
*
* @example Demonstration
* ```php
* $var1 = array ('A', 'B'); // Array
* $var2 = new ArrayObject(array ('A', 'B', 'C')); // Countable object
* $var3 = 'ABCD'; // String
* $var4 = null; // Null
* var_dump( arr::count($var1) );
* var_dump( arr::count($var2) );
* var_dump( arr::count($var3) );
* var_dump( arr::count($var4) );
* ```
* @example Recursively counting
* ```php
* $var = array (
* 'A', 'B',
* array ('C', 'D'),
* 'E', 'F'
* );
* var_dump( arr::count($var) ); // Normal
* var_dump( arr::count($var, true) ); // Recursive
* ```
* @param array|object $X An array, countable object, or iterable object
* @param boolean $Recursive *(optional)* Whether or not to count recursively
* @return integer
*/
static function count($X, $Recursive = false)
{
if (is_object($X)) {
if (!$X instanceof \Countable) {
if ($X instanceof \Traversable) {
// Computes
$r = 0;
if ($Recursive) {
foreach ($X as $iX) {
$r += 1 + arr::count($iX, true);
}
} else {
foreach ($X as $iX) {
$r++;
}
}
return $r;
}
}
}
return \count($X, $Recursive ? COUNT_RECURSIVE : COUNT_NORMAL);
}