美文网首页
根据经纬度坐标计算距离

根据经纬度坐标计算距离

作者: 遥控板 | 来源:发表于2019-11-16 13:46 被阅读0次

    res = Db::query("SELECT id,line_shop_name,ROUND(2 * 6378.137 * ASIN(SQRT(POW( SIN( PI( ) * ( " .data['longitude'] . "- map_longitude ) / 360 ), 2 ) + COS( PI( ) * " . data['latitude'] . " / 180 ) * COS( map_latitude * PI( ) / 180 ) * POW( SIN( PI( ) * ( " .data['latitude'] . "- map_latitude ) / 360 ), 2 )))*1000) AS distance FROM shop ORDER BY distance ASC");

    range = 180 / pi() * 1.5 / 6378.137; //里面的 1 就代表搜索 1km 之内,单位km6372.797lngR = range / cos(latitude * pi() / 180);
    maxLat =latitude + range; //最大纬度minLat = latitude -range; //最小纬度
    maxLng =longitude + lngR; //最大经度minLng = longitude -lngR; //最小经度

    相关文章

      网友评论

          本文标题:根据经纬度坐标计算距离

          本文链接:https://www.haomeiwen.com/subject/jcdyictx.html