首页 > 解决方案 > 从 foreach 循环中获取最低的键和值

问题描述

我正在位置之间进行一些计算,我需要在使用 foreach 完成时获得返回的最低键和值。我该如何做到这一点?

// Los Angeles
$start_location = '34.048516, -118.260529';

$array=array(
'New York'=>'40.667646, -73.981803',
'Boston'=>'42.356909, -71.072573',
'Miami'=>'25.764618, -80.213501'
);


foreach($array as $x=>$x_value){

  echo $x." -> ".calculateDistance($start_location, $x_value);
  // Prints a number like "334".

}

例如,如果和New York -> 132,我需要它返回最低的一个:Boston -> 204Miami -> 393

New York -> 132

标签: php

解决方案


您可以使用array_searchandmin函数来获取该元素的最小值和键

$arr = [];
foreach($array as $x=>$x_value){
  $arr[$x]= calculateDistance($start_location, $x_value);
}
echo 'Key :- '.array_search(min($arr),$arr);
echo '<br/>';
echo 'Value :-' .min($arr);

输出

Key :- New York
Value :- 132

推荐阅读