簡體   English   中英

NAN在計算兩個點之間的距離

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM