在php脚本中如果想统计一个指定的值在数组中重复出现的次数,可以使用php提供的预设函数 array_count_values(),他可以将数组中所有的值重复出现的次数进行统计,并以数组的形式返回结果,使用起来非常的简单方便!

php array_count_values() 函数

array_count_values():统计一个指定数组中所有的值出现的次数,并以数组的形式返回一个结果,其元素的键名则是原数组的值,键值则为该值在原数组中出现的次数。

语法:

array_count_values(array)

参数:array 为要处理的数组,不可省略。

php 统计数组中所有值重复出现的次数

例:php统计一个带有键名的数组中键值的重复次数

$arr = array(
    'v1' => 'a',
    'v2' => 'a',
    'v3' => 'c',
    'v4' => 'd',
    'v5' => 'e'
);
print_r(array_count_values($arr));

打印结果:

Array
(
    [a] => 2
    [c] => 1
    [d] => 1
    [e] => 1
)

例2:php统计一个不带有键名的数组中键值的重复次数

$arr = array('a','b','c','d','d','d','c');
print_r(array_count_values($arr));

打印结果:

Array
(
    [a] => 1
    [b] => 1
    [c] => 2
    [d] => 3
)

例3:php array_count_values() 统计一个多维数组中值重复出现的次数

array_count_values() 在尝试统计一个多维数组中值出现的次数时,会抛出错误。

$arr = array('a','b',array('a','b','c'),'d','d','d','c');
print_r(array_count_values($arr));

抛出错误:

array_count_values(): Can only count STRING and INTEGER values!

错误解释:

array_count_values() 函数只能统计字符串和整数值类型的数值,对于多维数组它是无法进行统计处理的!