通过php代码计算经纬度之间的距离

位置:首页 / 新闻中心 / 新框架教程

新框架教程 Admin 2024-11-08 19:18:18 1883

代码如下:

function getDistance($lat1,$lng1,$lat2,$lng2,$len_type = 1,$decimal = 3){

    $earthRadius = 6371; // 地球半径(单位:公里)


    // 将角度转换为弧度

    $lat1 = deg2rad($lat1);

    $lon1 = deg2rad($lng1);

    $lat2 = deg2rad($lat2);

    $lon2 = deg2rad($lng2);


    // 计算纬度和经度的差值

    $latDiff = $lat2 - $lat1;

    $lonDiff = $lon2 - $lon1;


    // Haversine 公式

    $a = sin($latDiff / 2) ** 2 + cos($lat1) * cos($lat2) * sin($lonDiff / 2) ** 2;

    $c = 2 * atan2(sqrt($a), sqrt(1 - $a));


    // 计算距离

    $distance = $earthRadius * $c;


    if ($len_type == 1){

        $distance = round($distance * 1000,0);

    }

    return round($distance,0);

}

以上就是“通过php代码计算经纬度之间的距离”的详细内容,更多请关注木子天禾科技其它相关文章!

15934152105 扫描微信