Php 多维数组中最常见的值

Php 多维数组中最常见的值,php,arrays,Php,Arrays,我的问题可能是重复的,但我真的觉得很难。(我读过相关主题) 这是阵列: Array ( [0] => Array ( [legend] => 38440 ) [1] => Array ( [bestw] => 9765 ) [2] => Array ( [fiuna] => 3877

我的问题可能是重复的,但我真的觉得很难。(我读过相关主题)

这是阵列:

Array
(
    [0] => Array
        (
            [legend] => 38440
        )

    [1] => Array
        (
            [bestw] => 9765
        )

    [2] => Array
        (
            [fiuna] => 38779
        )

    [3] => Array
        (
            [adam] => 39011
        )

    [4] => Array
        (
            [adam] => 39011
        )

    [5] => Array
        (
            [adam] => 39011
        )

)
我已经尝试了很多方法来处理这个数组,并找到了最常见的值。我期望的结果是“亚当”


编辑:我的数组是这样的
数组(“A”=>“1”,“B”=>“2”,“A”=>“1”)
它应该返回A是最常见的

你可以试试这个代码。确实是一种蛮力的方法。但快速搜索使我发现这是一个有用的:

function findDuplicates($data,$dupval) {
$nb= 0;
foreach($data as $key => $val)
if ($val==$dupval) $nb++;
return $nb;
}

编辑:对不起,我误解了你的问题!但这可能是找到计数器最大的数组的第一个提示。

迭代数组并计算得到的值如何

$occurences = array();
foreach ($data as $row) {
  foreach ($row as $key => $score) {
    if (empty($occurences[$key])) {
      $occurences[$key] = 1;
    } else {
      $occurences[$key]++;
    }
  }
}
然后把它分类

arsort($occurences);
并获取排序数组的第一个元素

$t = array_keys($occurences);
$winner = array_shift($occurences);

不是真的!我的数组是这样的(“A”=>“1”、“B”=>“2”、“A”=>“1”),它应该返回A是最常见的,而不是最常见的,应该是具有最大计数器的数组?我喜欢arsort建议,但它不是问题的解决方案。
$t = array_keys($occurences);
$winner = array_shift($occurences);