您当前的位置: 首页 >  php

漏刻有时

暂无认证

  • 0浏览

    0关注

    717博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

php计算两个坐标点之间的距离的类

漏刻有时 发布时间:2020-11-18 14:18:25 ,浏览量:0

/* 计算两组经纬度坐标之间的距离
 * @param $lat1 纬度1
 * @param $lng1 经度1
 * @param $lat2 纬度2
 * @param $lng2 经度2
 * @param int $len_type 返回值类型(1-m 2-km)
 * @param int $decimal 保留小数位数
 * @return float
 */

function getDistance($lat1, $lng1, $lat2, $lng2, $len_type = 1, $decimal = 2)
{
    $radLat1 = $lat1 * 3.1415926 / 180.0;
    $radLat2 = $lat2 * 3.1415926 / 180.0;
    $a = $radLat1 - $radLat2;
    $b = ($lng1 * 3.1415926 / 180.0) - ($lng2 * 3.1415926 / 180.0);
    $s = 2 * asin(sqrt(pow(sin($a / 2), 2) + cos($radLat1) * cos($radLat2) * pow(sin($b / 2), 2)));
    $s = $s * 6378.137;
    $s = round($s * 1000);
    if ($len_type > 1) {
        $s /= 1000;
    }
    return round($s, $decimal);
}

$p1 = [121.554874, 29.813311];
$p2 = [121.554586, 29.813444];


echo getDistance($p1[0], $p1[1], $p2[0], $p2[1], 1, 2) . "米";

Done!

关注
打赏
1661217259
查看更多评论
立即登录/注册

微信扫码登录

0.0437s