如何计算数组中相同元素的数量

时间:2014-02-17 22:24:25

标签: php arrays

我的问题非常简单。 我有阵列

 $a = array('dog', 'dog', 'dog', 'mouse', 'mouse','mouse', 'cat','cat');

如何计算我所拥有的'狗'有多少元素? 我尝试了count()函数,我知道它不好,因为count不查看数组只计算元素数。

所以例如我的问题的答案是:

 dog = 3 
 mouse = 3
 cat = 2

4 个答案:

答案 0 :(得分:4)

使用array_count_values()

print_r(array_count_values($a));

Array
(
    [dog] => 3
    [mouse] => 3
    [cat] => 2
)

$count = array_count_values($a);
echo $count['dog']; // prints 3

答案 1 :(得分:2)

你必须使用array-count-values

http://www.php.net/manual/en/function.array-count-values.php

print_r(array_count_values($a));

Array
(
    [dog] => 3
    [mouse] => 3
    [cat] => 2
)

答案 2 :(得分:2)

您正在寻找array_count_values功能。

$a = array('dog', 'dog', 'dog', 'mouse', 'mouse','mouse', 'cat','cat');

$counted = array_count_values($a);

$numberOfDogs = $counted['dog'];

答案 3 :(得分:2)

array_count_values();

鉴于您的意见:

$a = array('dog', 'dog', 'dog', 'mouse', 'mouse','mouse', 'cat','cat');
$var = array_count_values($a);
var_dump($var);