Get total number of each unique value in an array?
Okay, so I've got an array that has a ton of random numbers in it, like this...
$array = array(134, 12, 54, 134, 22, 22, 1, 9, 45, 45, 12, 134, 45, 134);
What I need to do, is find out what numbers are contained in my array, and if a number is duplicated 开发者_StackOverflow社区in the array, I'd like to know how many times that number is found within the array. So taking the array that I listed above, I need the results to be something like this:
134: 4
12: 2
54: 1
22: 2
1: 1
9: 1
45: 3
etc.
Any bright ideas on how this might be accomplished?
Thanks!
See array_count_values.
<?php
print_r(array_count_values(
        array(134, 12, 54, 134, 22, 22, 1, 9, 45, 45, 12, 134, 45, 134)));
gives:
Array
(
    [134] => 4
    [12] => 2
    [54] => 1
    [22] => 2
    [1] => 1
    [9] => 1
    [45] => 3
)
Use array_count_values() to count the occurrences of each unique value:
$counts = array_count_values($array);
var_dump($counts);
Output:
array(7) {
  [134]=>
  int(4)
  [12]=>
  int(2)
  [54]=>
  int(1)
  [22]=>
  int(2)
  [1]=>
  int(1)
  [9]=>
  int(1)
  [45]=>
  int(3)
}
You can use the function:
array_count_values($array)
 
         加载中,请稍侯......
 加载中,请稍侯......
      
精彩评论