php计算两个经纬度地点之间距离的方法分享
用php计算两个指定的经纬度地点之间的距离,代码:
<?php /** *求两个已知经纬度之间的距离,单位为米 *@param lng1,lng2 经度 *@param lat1,lat2 纬度 *@return float 距离,单位米 *@edit www.jbxue.com **/ function getdistance($lng1,$lat1,$lng2,$lat2){ //将角度转为狐度 $radLat1=deg2rad($lat1);//deg2rad()函数将角度转换为弧度 $radLat2=deg2rad($lat2); $radLng1=deg2rad($lng1); $radLng2=deg2rad($lng2); $a=$radLat1-$radLat2; $b=$radLng1-$radLng2; $s=2*asin(sqrt(pow(sin($a/2),2)+cos($radLat1)*cos($radLat2)*pow(sin($b/2),2)))*6378.137*1000; return $s; } ?>
举例,“上海市延安西路2055弄”到“上海市静安寺”的距离:
上海市延安西路2055弄 经纬度:31.2014966,121.40233369999998
上海市静安寺 经纬度:31.22323799999999,121.44552099999998
那么:
结果为:4970.4248747365 ,约4970米,大约10里路。
几乎接近真实的距离了,看来用php计算两个经纬度地点之间的距离,还是靠谱的,呵呵。
您可能感兴趣的文章:
php计算两个经纬度地点之间距离的方法分享
PHP计算地球上两点之间的距离(示例详解)
PHP计算百度地图两个GPS坐标之间的距离代码
php计算两个坐标(经度,纬度)之间距离的方法
php计算距离的代码一例
返回给定的日期与地点的日落时间/ 日出时间
python canopy是什么
老师不会教的【DIV间距设置】技巧
CSS实用教程二
Redis命令介绍之Geo类型(地理空间)操作命令