`
Lamp兄弟
  • 浏览: 16874 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

php 计算 两个坐标之间的距离

    博客分类:
  • php
php 
阅读更多
<?php
define('EARTH_RADIUS', 6378.137);//地球半径
define('PI', 3.1415926);
/**
 * 计算两组经纬度坐标 之间的距离
 * params :lat1 纬度1; lng1 经度1; lat2 纬度2; lng2 经度2; len_type (1:m or 2:km);
 * return m or km
 */
function GetDistance($lat1, $lng1, $lat2, $lng2, $len_type = 1, $decimal = 2)
{
   $radLat1 = $lat1 * PI / 180.0;
   $radLat2 = $lat2 * PI / 180.0;
   $a         = $radLat1 - $radLat2;
   $b         = ($lng1 * PI / 180.0) - ($lng2 * PI / 180.0);
   $s = 2 * asin(sqrt(pow(sin($a/2),2) + cos($radLat1) * cos($radLat2) * pow(sin($b/2),2)));
   $s = $s * EARTH_RADIUS;
   $s = round($s * 1000);
   if ($len_type > 1)
   {
       $s /= 1000;
   }
   
   return round($s, $decimal);
}
echo GetDistance(39.908156,116.4767, 39.908452,116.450479, 1);//输出距离/米
分享到:
评论

相关推荐

    php如何计算两坐标点之间的距离

    本文实例为大家分享了php计算两坐标点之间距离的实现代码,供大家参考,具体内容如下 地球上两个点之间,可近可远。 当比较近的时候,可以忽略球面因素,当做是一个平面,这样就有了两种计算方法。 //两点间距离...

    WGS84坐标下根据经纬度计算两点之间的距离

    WGS84坐标下根据经纬度计算两点之间的距离 Xian80的需要先转化

    geo:计算两个坐标之间的距离

    计算两个地理坐标之间距离的简单方法。 有用于计算的文。 由 Composer 安装 require: "ayeo/geo": "1.0.*" 示例使用 use Ayeo \ Geo \ Coordinate ; use Ayeo \ Geo \ DistanceCalculator ; //London: 51°30′N 0...

    php计算两个坐标(经度,纬度)之间距离的方法

    主要介绍了php计算两个坐标(经度,纬度)之间距离的方法,涉及php相关数学函数的使用技巧,非常具有实用价值,需要的朋友可以参考下

    PHP计算百度地图两个GPS坐标之间距离的方法

     * 计算两个坐标之间的距离(米)  * @param float $fP1Lat 起点(纬度)  * @param float $fP1Lon 起点(经度)  * @param float $fP2Lat 终点(纬度)  * @param float $fP2Lon 终点(经度)  * @return int  */ ...

    php两点地理坐标距离的计算方法

    本文实例为大家分享了php计算两点地理坐标距离的具体代码,供大家参考,具体内容如下 功能:根据圆周率和地球半径系数与两点坐标的经纬度,计算两点之间的球面距离。 获取两点坐标距离: &lt;?php /** * 计算两点...

    ios adriod手机和php服务端交互上传 下载 计算地图坐标距离集成类

    不管是ios 还是andriod 和php交互 上传下载 以及计算地图上两个坐标之间的距离都没问题!如有疑问可以联系我!自己总结测试过!已经用到现在的项目当中了!绝对好用

    golang与php实现计算两个经纬度之间距离的方法

    主要介绍了golang与php实现计算两个经纬度之间距离的方法,结合实例形式对比分析了Go语言与php进行经纬度计算的相关数学运算技巧,需要的朋友可以参考下

    coordist:计算两点之间的距离(Node.js 模块)

    计算两点之间的距离 距离(coord1,coord2,isCartesian) 名称 类型 注意 坐标1 目的 第一个坐标 坐标2 目的 第二坐标 是笛卡尔 布尔值 如果是 - 平面,否 - 大地水准面 坐标对象有三个字段:{lat, lng, alt},...

    distancias:PHP 公式计算以公里、英里或海里为单位的两点之间的距离

    计算两点之间的距离 PHP 给定两个点,坐标以 DECIMAL 表示法给出的纬度和经度给出(例如 40.2342342)。 应用Haversine公式: 并基于来自 Taringa 的这段 PHP 代码: 如果您不想使用 Google Maps API,它是一个必...

    简单而强大PHP地理库-PHP开发

    phpgeo-用于PHP的简单地理库phpgeo提供地理...phpgeo-适用于PHP的简单地理库需求文档安装许可功能示例/用法两个坐标之间的距离(Vincenty公式)简化多段线多边形包含一个点(例如“ GPS geofence”)坐标的格式化输出

    geotools:与地理相关的工具,在Geocoder和React库之上构建了PHP 5.4+库

    地质工具 Geotools是一个与PHP地理相关的库,建立在和库之上。 产品特点 针对一个或一组提供者串行/并行地批处理地理编码和反向地理... 使用flat , great circle , haversine或vincenty算法计算两个坐标之间的距离

    PHP实现搜索地理位置及计算两点地理位置间距离的实例

    LBS,存储每个地点的经纬度坐标,搜寻附近的地点,建立地理位置索引可提高查询效率。 mongodb地理位置索引,2d和2dsphere,对应平面和球面。 1.创建lbs集合存放地点坐标 use lbs; db.lbs.insert( { loc:{ type:...

    zipcode:邮政编码地理定位和其他方法

    邮政编码数据库使用此包将邮政编码转换为地理坐标,计算两个邮政编码之间的距离,找到最接近经纬度点的邮政编码,并返回邮政编码半径内的邮政编码列表。安装通过 composer 安装、发布配置文件、使用新的 artisan ...

    trip-planner:DDD应用程序的代码示例

    点具有坐标和距离计算逻辑 路线知道大概的道路距离 一条路线可以重复 可以将重复的路线添加到行程中 权衡:删除了InternalIdentity值对象 修复:Date :: input应该是一个DateTime 权衡:我们需要一个自定义事件调度...

    EXTJS总结.txt

    可以是插入一个元素,也可以是创建一个元素(要创建的话请使用“DomHelper配置项对象”作为参数传入),总之,这个元素作为当前元素的第一个子元素出现。 var el = Ext.get('elId1'); // 插入的dom节点作为第一个...

Global site tag (gtag.js) - Google Analytics