/**
 * 获取当前位置到指定位置的距离(Km/公里)精确到2位小数
 * $from = array($post['lon'],$post['lat']); 当前位置经纬度
 * $to= array($post['lon'],$post['lat']); 目的地经纬度
 */
public function get_distance($from,$to,$km=true,$decimal=2){
    sort($from);
    sort($to);
    $EARTH_RADIUS = 6370.996; // 地球半径系数

    $distance = $EARTH_RADIUS*2*asin(sqrt(pow(sin( ($from[0]*pi()/180-$to[0]*pi()/180)/2),2)+cos($from[0]*pi()/180)*cos($to[0]*pi()/180)* pow(sin( ($from[1]*pi()/180-$to[1]*pi()/180)/2),2)))*1000;

    if($km){
        $distance = $distance / 1000;
    }

    return round($distance, $decimal);

}
04-02 01:44