2017/5/24 13:46:49
Category 软件技术 Tag 经纬度,距离已知两经纬度,如何计算其距离呢,除了使用地图API外,还有更简单粗暴的方法,下面以PHP为例计算两点直接距离:
/*
lon1、lat1是中心点
lon2、lat2是目标点
km表示是否转换为km单位
*/
public function get_distance($lon1 , $lat1 , $lon2 , $lat2){
$km=false;
$decimal=2;
$EARTH_RADIUS = 6370.996; // 地球半径系数
$distance = $EARTH_RADIUS*2*asin(sqrt(pow(sin( ($lon1*pi()/180-$lon2*pi()/180)/2),2)+cos($lon1*pi()/180)*cos($lon2*pi()/180)* pow(sin( ($lat1*pi()/180-$lat2*pi()/180)/2),2)))*1000;
if($km){
$distance = $distance / 1000;
}
return round($distance, $decimal);
}