统计数组元素的个数可以使用count()函数。
下面通过实例介绍如何使用count()函数统计数组元素的个数。
【例6.14】
运行结果如图6-16所示。
【案例分析】
(1)数组$prices_per_day通过count()函数返回整数4。因为数组$prices_per_day有4个数组元素。
(2)数组$roomtypesinfo为一个二维数组。count($roomtypesinfo)只统计了数组$roomtypesinfo内的4个内嵌数组的数量,所以输出结果如图6-16所示。
(3)echo count($roomtypesinfo,1)这一语句中,count()函数设置了一个模式(mod)为整数“1”。这个模式(mod)设置为整数“1”的意义是,count统计的时候要对数组内部所有的内嵌数组进行循环查询,所以最终的结果是所有内嵌数组的个数加上内嵌数组内元素的个数,即4个内嵌数组加上12个数组元素,即16。
使用array_count_values()函数对数组内的元素值进行统计,并且返回一个以函数值为“键值”、以函数值个数为“元素值”的数组。
下面通过实例介绍如何使用array_count_values()函数统计数组的元素值个数。
【例6.15】
<?php
$prices_per_day = array('单床房'=> 298,'标准间'=> 268,'三床房'=> 198,'四床房'=>
198,'VIP套房'=> 368);
print_r(array_count_values($prices_per_day));
?>
运行结果如图6-17所示。
【案例分析】
(1)数组$prices_per_day为一个联合数组,通过array_count_values($prices_per_day)统计数组内元素值的个数和分布,然后以键值和值的形式返回一个数组,如图6-17所示。元素值为198的元素有两个,虽然它们的键值完全不同。
(2)array_count_values()只能用于一维数组,因为它不能把内嵌的数组当作元素进行统计。