English 中文(简体)
阵列中最高价值回归指数
原标题:Return index of highest value in an array
  • 时间:2009-09-22 17:08:41
  •  标签:

从像以下这样的一阵列中,我如何能够获得阵列最高值的指数。 对于以下阵列,预期结果为11。

Array (
    [11] => 14
    [10] => 9
    [12] => 7
    [13] => 7
    [14] => 4
    [15] => 6
)
最佳回答

我的解决办法是:

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

Note:
this way you can retrieve every key related to a given max value.

如果你只关心所有中的关键内容,则简单使用$maxs[0]

问题回答
<?php

$array = array(11 => 14,
               10 => 9,
               12 => 7,
               13 => 7,
               14 => 4,
               15 => 6);

echo array_search(max($array), $array);

?>

<>strong>array_search(search)(回报值):

如果在阵列中发现了针头,则返回是针头的关键。

如果在沙斯特发现针不止一次,第1配对钥匙就会归还。 为了归还所有配对价值的关键,使用阵列——钥匙和选择性搜索——价值参数。

我知道它已经解答了,但我认为这是一个解决办法:

arsort($array);
reset($array);
echo key($array);

and!

其他答复可能比较简短,但这应当是最有效的,容易理解。

/**
 * Get key of the max value
 *
 * @var array $array
 * @return mixed
*/
function array_key_max_value($array)
{
    $max = null;
    $result = null;
    foreach ($array as $key => $value) {
        if ($max === null || $value > $max) {
            $result = $key;
            $max = $value;
        }
    }

    return $result;
}

那样做,就应该trick笑。

function array_max_key($array) {
  $max_key = -1;
  $max_val = -1;

  foreach ($array as $key => $value) {
    if ($value > $max_val) {
      $max_key = $key;
      $max_val = $value;
    }
  }

  return $max_key;
}

我的解决方案是:

max(array_keys($values[ Users ]));
$newarr=arsort($arr);
$max_key=array_shift(array_keys($new_arr));




相关问题
热门标签