BlaBla.cn

PHP: count - Manual

BlaBla.cn
current > <compact
Last updated: Wed, 19 Mar 2008

count

(PHP 4, PHP 5)

count — 计算数组中的单元数目或对象中的属性个数

说明

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

返回 var 中的单元数目,通常是一个 array,任何其它类型都只有一个单元。

对于对象,如果安装了 SPL,可以通过实现 Countable 接口来调用 count()。该接口只有一个方法 count(),此方法返回 count() 函数的返回值。

如果 var 不是数组类型或者实现了 Countable 接口的对象,将返回 1,有一个例外,如果 var NULL 则结果是 0

Note: 可选的 mode 参数自 PHP 4.2.0 起可用。

如果可选的 mode 参数设为 COUNT_RECURSIVE (或 1), count() 将递归地对数组计数。对计算多维数组的所有单元尤其有用。 mode 的默认值是 0count() 识别不了无限递归。

Caution

count() 对没有初始化的变量返回 0,但对于空的数组也会返回 0。用 isset() 来测试变量是否已经初始化。

请参考手册中 数组一节中关于怎样在 PHP 中实现和使用数组的详细解释。

Example#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
?>

Example#2 count() 的递归例子(PHP >= 4.2.0)

<?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
?>

参见 is_array()isset()strlen()



current > <compact
Last updated: Wed, 19 Mar 2008
 

 
BlaBla.cn

© 2005-2008 BlaBla.cn 版权所有