2015-09-03 27 views
0

我有一个具有数千个值的数组。排序和计数数组的唯一值

$arr = array('Stone', 'Gem', 'Star', ..., 'Star', 'Rock', 'Salt', ..., 'Metal', 'Cotton', 'Gem',...);

我现在的问题是我怎么能算数组的值。例如:

Stone = 234 
Gem = 231 
Star = 123 
Rock = 98 
Salt = 265 
... 

这方面有任何想法?

+1

'array_count_values()'[documentation link](http://php.net/manual/en/function.array-count-values.php),返回所需的数组,并且输入数组保持原样 – Viral

+1

'array_count_values( $ array);' – Saty

+1

可能的重复[从关联数组中计数唯一值](http://stackoverflow.com/questions/14970869/count-unique-value-from-associative-array) –

回答

3

像这样:

$array_frequency = array_count_values($array);

的关键是你的输入数组的唯一值,并且它们各自的值是出现次数o f输入数组中的值。

1

使用array_count_values

$occurrences = array_count_values($arr); 

会导致类似:

Array 
(
    [Stone] => 234 
    [Gem] => 231 
    [Star] => 123 
)