我正在位置之间进行一些计算,当使用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".
}
Run Code Online (Sandbox Code Playgroud)
例如,如果New York -> 132,Boston -> 204并且Miami -> 393,我需要它返回最低的为:
New York -> 132
您可以使用array_search和min函数来获取该元素的最小值和键
$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);
Run Code Online (Sandbox Code Playgroud)
输出量
Key :- New York
Value :- 132
Run Code Online (Sandbox Code Playgroud)