[英]NAN in calculating distance between two Point
我在兩點之間的距離計算中使用Haversine公式。 有時結果是Come。有時它得到NAN結果。請在這里幫助我的代碼
function distanceCalculation($point1_lat, $point1_long, $lat, $lng, $unit = 'km', $decimals = 3)
{
$degrees = rad2deg(acos((sin(deg2rad($point1_lat)) * sin(deg2rad($lat))) + (cos(deg2rad($point1_lat)) * cos(deg2rad($lat)) * cos(deg2rad($point1_long - $lng)))));
switch ($unit) {
case 'km':
$distance = $degrees * 111.13384;
break;
case 'mi':
$distance = $degrees * 69.05482;
break;
case 'nmi':
$distance = $degrees * 59.97662;
}
return round($distance, $decimals);
}
function isValid($arg = 0)
{
return (is_nan($arg) || is_infinite($arg))? 0 :$arg;
}
return isValid(round($distance, $decimals));
使用此函數檢查is_nan和is_infinite。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.