我有一个像这样的数组
array={'a'=>'2','b'=>'5', 'c'=>'6', 'd'=>'6', 'e'=>'2'};
根据$ _POST变量,数组值可能会有所不同。我的问题是如何在我的数组中找到最高值并返回索引键。在我的情况下,我需要得到'c'和'd'以及值6.不确定如何做到这一点。任何帮助将不胜感激。感谢。
答案 0 :(得分:4)
$max = max(array_values($array));
$keys = array_keys($array, $max);
答案 1 :(得分:1)
答案 2 :(得分:1)
$array = array(
'key1' => 22,
'key2' => 17,
'key3' => 19,
'key4' => 21,
'key5' => 24,
'key6' => 8,
);
function getHighest($array)
{
$highest = 0;
foreach($array as $index => $value)
{
if(is_numeric($value) && $value > $highest)
{
$highest = $index;
}
}
return $highest;
}
echo getHighest($array); //key5
答案 3 :(得分:0)
或者这应该是神奇的,它可能比php内置函数更快
$maxValue = -1;
$max = array();
foreach ($items as $key => $item) {
if ($item == $maxValue) {
$max[] = $key;
} elseif ($item > $maxValue) {
$max = array();
$max[] = $key;
$maxValue = $item;
}
}