Из массива, который выглядит примерно так: как я могу получить индекс самого высокого значения в массиве. Для нижеприведенного массива желаемым результатом будет "11".
Array ( [11] => 14 [10] => 9 [12] => 7 [13] => 7 [14] => 4 [15] => 6 )
Из массива, который выглядит примерно так: как я могу получить индекс самого высокого значения в массиве. Для нижеприведенного массива желаемым результатом будет "11".
Array ( [11] => 14 [10] => 9 [12] => 7 [13] => 7 [14] => 4 [15] => 6 )
Мое решение:
$maxs = array_keys($array, max($array))
  Примечание: 
 таким образом вы можете получить  каждую клавишу, связанную с заданным максимальным значением.
Если вас интересует только один ключ среди всех, просто используйте $maxs [0]
<?php
$array = array(11 => 14,
               10 => 9,
               12 => 7,
               13 => 7,
               14 => 4,
               15 => 6);
echo array_search(max($array), $array);
?>
array_search() возвращает значения:
Возвращает ключ для иглы, если он найден в массиве, FALSE в противном случае.
Если игла найдена в стоге сена более одного раза, возвращается первая соответствующая клавиша. Чтобы вернуть ключи для всех совпадающих значений, используйте параметр array_keys() с необязательным параметром search_value.
Я знаю, что он уже ответил, но вот решение, которое я считаю более элегантным:
arsort($array);
reset($array);
echo key($array);
и вуаля!
Что-то вроде этого должно сделать трюк
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));
		<?php 
$array =  array (
    '11' => 14,
    '10' => 9,
    '12' => 7,
    '13' => 7,
    '14' => 4,
    '15' => 6
);
foreach ($array as $key => $value) {
   if ($value >= $max) 
        $max = max($array);          
}
echo " The array in Maximum Value :".$max."<br/>";
?> 
		Другие ответы могут иметь более короткий код, но этот должен быть наиболее эффективным и легко понять.
/**
 * 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;
}
		Функция взята из http://www.php.net/manual/en/function.max.php
function max_key($array) {
    foreach ($array as $key => $val) {
        if ($val == max($array)) return $key; 
    }
}
$arr = array (
    '11' => 14,
    '10' => 9,
    '12' => 7,
    '13' => 7,
    '14' => 4,
    '15' => 6
);
die(var_dump(max_key($arr)));
Работает как шарм