简化版 分站 地图 日历 影视
计算器 行情 加解密 长度 面积
首页 软件 编程 笑话 知识 公告 注册 登录 用QQ登录本站
文明驾车我带头,文明行路我带头,礼貌让座我带头      

[公益] 节省一分零钱 献出一份爱心 温暖世间真情      
广告位招租中
2021年 春 节 25
2021年 情人节 27
2021年 元宵节 39
2022年 元 旦 348
全部 综合数码金融娱乐服务报刊政府机构 推荐 申请 友情  
  • 您现在的位置:首页 >> PHP >> 内容

    PHP通过经纬度实现两地之间的距离(单位以公里)

    内容摘要: /*** 计算两点地理坐标之间的距离* @param Decimal $longitude1 起点经度* @param Decimal $latitude1 起点纬度* @param Decimal $longitude2 终点经度* @param Decimal $latitude2 终点纬度* @param Int$unit 单位 1:米 2:公里* @......

      /**

    * 计算两点地理坐标之间的距离

    * @param Decimal $longitude1 起点经度

    * @param Decimal $latitude1 起点纬度

    * @param Decimal $longitude2 终点经度

    * @param Decimal $latitude2 终点纬度

    * @param Int $unit 单位 1:米 2:公里

    * @param Int $decimal 精度 保留小数位数

    * @return Decimal

    */

    function new_getDistance($longitude1, $latitude1, $longitude2, $latitude2, $unit=2, $decimal=2){

    $EARTH_RADIUS = 6370.996; // 地球半径系数

    $PI = 3.1415926;


    $radLat1 = $latitude1 * $PI / 180.0;

    $radLat2 = $latitude2 * $PI / 180.0;


    $radLng1 = $longitude1 * $PI / 180.0;

    $radLng2 = $longitude2 * $PI /180.0;


    $a = $radLat1 - $radLat2;

    $b = $radLng1 - $radLng2;

    $distance = 2 * asin(sqrt(pow(sin($a/2),2) + cos($radLat1) * cos($radLat2) * pow(sin($b/2),2)));

    $distance = $distance * $EARTH_RADIUS * 1000;


    if($unit==2){

    $distance = $distance / 1000;

    }

    return round($distance, $decimal);

    }

      版权声明:本内容来源于互联网,如有侵犯您的版权,请联系站长,本站收到您的信息后将及时处理。


    发布日期:2020/12/10 发布时间:15:14:14 点击:269 录入:齐天大圣
  • 上一篇:PHP验证名称
  • 下一篇:PHP 数字前面补零 固定位数补0
  • 本类新增
    本类热门文章
    Baidu

    YiJiaCMS V3.88 Build 20.12.22(MSSQL) 闽ICP备05000814号-1
    本空间由景安网络提供,百度云加速提供加速防护
    齐天大圣® 制 作 ©2000-2021