根据值获取关联数组的元素

时间:2012-04-19 17:41:28

标签: php

我有这个数组:

Array ( 'jan' => 2, 'feb' => 1, 'mar' => 2, 'apr' => 1 )

..我想回来:

Array ('jan', 'mar')

在中,找到具有最高计数的2个元素并将它们放在一个数组中。实现这一目标的最简单方法是什么?

2 个答案:

答案 0 :(得分:8)

您可以使用max()获取最大值,使用array_keys()获取包含具有该值的键的数组。

$max = array_keys($array, max($array));

答案 1 :(得分:2)

嗯,当你需要得到固定数量的顶值时,这个就可以了。

$array = array( 'jan' => 2 'feb' => 1 'mar' => 2 'apr' => 1 );
arsort($array);
$i = 0;
$max = 2;
$newArray = Array();
foreach($array as $key => $value)
{
  if ($i < $max)
  {
    $newArray[] = $key;
  }
  $i++;
}