您现在的位置是:首页 >学无止境 >PHP根据经纬度查询距离网站首页学无止境

PHP根据经纬度查询距离

Wandering in Houhai 2017-11-20 22:22:07
简介根据经纬度查询距离--php计算
/** 
* 根据经纬度查询距离--php计算 
* 纬小经大 
* 39.913385,116.380589|39.914575,116.424535 
*/ 
protected function get_distance($shop_lon, $shop_lat, $user_lon, $user_lat) { 
    //deg2rad()函数将角度转换为弧度 
    $radLat1 = deg2rad($shop_lat); 
    $radLat2 = deg2rad($user_lat); 
    $radLng1 = deg2rad($shop_lon); 
    $radLng2 = deg2rad($user_lon); 
    $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; 
    $tmp_distance = round($s, 1); 
    $res_distance = $tmp_distance .'m'; 
    if($tmp_distance>1000){ 
      $res_distance = round($tmp_distance/1000,1).'km'; 
    } 
    $distance['status'] = 0; 
    $distance['distance'] = $res_distance; 
    $distance['tmp_distance'] = $tmp_distance; 
    return $distance; 
}
梦想加空间!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。