`
Lamp兄弟
  • 浏览: 17641 次
  • 性别: 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);//输出距离/米
分享到:
评论

相关推荐

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

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

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

    计算两个坐标点之间的距离通常采用“大圆距离”方法,这是基于球面上两点间最短路径的理论。在地球上,这个路径被称为“大圆航线”。要计算大圆距离,我们可以使用Haversine公式,它考虑了地球的曲率。Haversine公式...

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

    通过使用PHP语言,我们可以编写函数来计算地球上任意两个坐标点之间的距离。 首先,基本的思路是使用地球半径和球面三角学的知识来计算两点间的距离。由于地球是一个近似的球体,因此我们可以使用球面距离公式来...

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

    计算两个GPS坐标点之间的距离,可以使用Haversine公式,该公式考虑了地球的曲率。在PHP中,我们可以创建一个名为`distanceBetween`的函数来实现这个计算: ```php function distanceBetween($fP1Lat, $fP1Lon, $fP2...

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

    在Golang和PHP这两种编程语言中,计算两个经纬度之间的距离是一项常见的任务,这通常涉及到地球表面的距离估算。以下将详细介绍这两种语言如何实现这一功能。 首先,我们来看Golang的实现。在给出的示例中,`...

    php实现计算百度地图坐标之间距离的方法

    在当前的网络应用开发中,经常需要处理地理信息数据,如计算两个地理坐标之间的距离。百度地图作为一个常见的地图服务平台,提供了丰富的地理信息服务。本文将介绍如何在PHP环境中实现计算百度地图坐标之间的距离,...

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

    这段代码会计算两个坐标点之间的距离,并以米和公里两种单位输出。 在实际应用中,这种计算方法可能需要结合其他地理定位库,如Google Maps API、OpenStreetMap Nominatim或其他类似的API来获取更准确的地理位置...

    php计算地图上两点间的距离的类.zip

    2. 成员方法:一个名为`calculateDistance`的方法,接受两个坐标对象(或者经度和纬度的数组)作为参数,执行Haversine计算并返回结果。 3. 单位转换:类中可能还包含了将弧度转换为公里或其它单位的功能。 使用这...

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

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

    geohash:一个解决计算附近距离的php类库

    4. **距离计算**:`geohash`库还提供了计算两个位置之间距离的功能,这对于提供基于位置的服务至关重要,如推荐最近的餐馆或导航服务。 5. **空间索引**:`geohash`可以作为构建空间索引的基础,使得在大量地理位置...

    百度地图测试两个地址的距离

    在IT行业中,尤其是在Web开发领域,常常需要计算两个地理位置之间的距离。百度地图API提供了一个强大的工具,可以帮助开发者轻松实现这一功能。本篇文章将详细讲解如何使用百度地图API来测试两个地址之间的距离,并...

    php计算地图上两点间的距离的类

    在地图应用中,有时我们需要计算地球上两个地理位置之间的距离,例如用于导航、物流跟踪或地理围栏等功能。这个"php计算地图上两点间的距离的类"就是为此目的设计的。 首先,我们要理解地理坐标系统。地球表面的每...

    PHP根据两点间的经纬度计算距离1

    在本文中,我们将深入探讨如何使用PHP来计算两个地点之间的距离,基于它们的经纬度坐标。这个功能在很多Web应用程序中都有用到,比如地图服务、物流跟踪或旅行规划等。我们将按照以下步骤来实现这一功能: 首先,...

    PHP计算当前坐标3公里内4个角落的最大最小经纬度实例

    本篇将详细讲解如何利用PHP计算当前坐标3公里内四个角落的最大最小经纬度。 首先,我们需要了解地球的平均半径($half)约为6371公里。这个值是用于转换地球上两点之间的距离到弧度,因为在计算经纬度时通常使用...

    大地坐标-经纬度 转换

    在提供的压缩包文件中,有两个关键文件可能与坐标转换有关: - **BLXYHelp.chm**:这可能是一个帮助文档,详细介绍了“大地坐标-经纬度”转换的算法和使用方法,可能包含具体的公式和步骤。 - **BLXY.EXE**:这可能...

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

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

Global site tag (gtag.js) - Google Analytics