下面是我的代码
$gamePrice = 1350;
$arr = array(1233, 4445, 1100, 9008, 900, 1320, 1390, 1320, 1400);
function getClosest($gamePrice, $arr){
$closestAnswer = null;
foreach($arr as $guess){
if($closestAnswer == null || abs($gamePrice - $closestAnswer)>(abs($guess - $gamePrice))){
$closestAnswer = $guess;
}
}
return $closestAnswer;
}
echo getClosest($gamePrice, $arr);
所以目前这只是返回值 - 1320,这是最接近 $gamePrice - 1350 的值。
我想要发生的事情是让函数返回一个数组,例如 $arr2 ,它在数组的开头用最接近的答案排序,即 $arr2[0] 和其余的答案从这个值降序排列,即下一个最接近的答案应该是 $arr[1] 并且离游戏价格最远的答案应该在排序数组的末尾。
我希望这很清楚,有人可以尽快提供帮助。
谢谢。