PHP根据经纬度坐标计算距离

在有些应用中需要用到计算距离的功能,例如附近的商家、离我最近等功能。

W为纬度对应的弧度,J为经度对应的弧度,如上图所示

下面代码  lat是纬度  lng是经度

看类代码/**

* 根据经纬度算距离,返回结果单位是公里,先纬度,后经度

* @param $lat1

* @param $lng1

* @param $lat2

* @param $lng2

* @return float|int

*/

public function GetDistance($lat1, $lng1, $lat2, $lng2)

{

$EARTH_RADIUS = 6378.137;

$radLat1 = $this->rad($lat1);

$radLat2 = $this->rad($lat2);

$a = $radLat1 - $radLat2;

$b = $this->rad($lng1) - $this->rad($lng2);

$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 * 10000) / 10000;

return $s;

}

private function rad($d)

{

return $d * M_PI / 180.0;

}

php经纬度测距,PHP根据经纬度坐标计算距离相关推荐

  1. php经纬度换算距离,PHP根据经纬度坐标计算距离

    PHP根据经纬度坐标计算距离 在有些应用中需要用到计算距离的功能,例如附近的商家.离我最近等功能. W为纬度对应的弧度,J为经度对应的弧度,如上图所示 下面代码  lat是纬度  lng是经度 看类代 ...

  2. 给定经纬度计算距离_通过经纬度坐标计算距离的方法(经纬度距离计算)ZZ

    通过经纬度坐标计算距离的方法(经纬度距离计算) 最近在网上搜索"通过经纬度坐标计算距离的方法",发现网上大部分都是如下的代码: #define PI 3.14159265 stat ...

  3. 通过经纬度坐标计算距离的方法(实为通过一个经纬度和距离角度求另一个经纬度)

    转自:https://www.cnblogs.com/softfair/p/lat_lon_distance_bearing_new_lat_lon.html 通过经纬度坐标计算距离的方法(经纬度距离 ...

  4. 通过经纬度坐标计算距离的方法(经纬度距离计算)

    通过经纬度坐标计算距离的方法(经纬度距离计算) 最近在网上搜索"通过经纬度坐标计算距离的方法",发现网上大部分都是如下的代码: #define PI 3.14159265 stat ...

  5. python学习-108-根据经纬度坐标计算距离

    前言: 根据经纬度坐标计算两点距离,并不能直接使用欧氏距离,因为经纬度是在曲面上的要计算弧度的影响.因此本文根据经纬度坐标公式代码实现. 参考链接: https://blog.csdn.net/xie ...

  6. 坐标计算距离公式 火星坐标系_根据经纬度计算距离的公式、百度坐标转换成GPS坐标(PHP版)...

    //百度坐标转换成GPS坐标 $lnglat = '121.437518,31.224665'; function FromBaiduToGpsXY($lnglat){ // 经度,纬度 $lngla ...

  7. 通过经纬度坐标计算距离

    工作之余,贡献给大家一个公式,教你如何计算地球上两个点之间的距离. 以下公式输入两点的经纬度坐标即可计算,计算出的单位是  米 public static double getDistance(dou ...

  8. 根据经纬度坐标计算距离sql语句

    //根据经纬度计算附近商家距离 /* @param $lng,经度* @param $lat,纬度* @param $distance 计算的距离* @param $sort 根据距离排序*/func ...

  9. 坐标计算距离公式 火星坐标系_WGS84、GCJ02、BD09地图坐标系间的坐标转换及坐标距离计算...

    坐标转换转载来源:http://nightfarmer.github.io/2016/12/01/GPSUtil/ 坐标系 解释 使用地图 WGS84 地球坐标系,国际上通用的坐标系.设备一般包含GP ...

  10. java通过坐标计算距离,并进行单位换算

    <dependency><groupId>org.gavaghan</groupId><artifactId>geodesy</artifactI ...

最新文章

  1. Java开发工具简介
  2. 【Android UI】TextView的垂直方向概念之top,bottom,ascent,descent,baseline
  3. 阻塞(block)/非阻塞(unblock) 同步(synchronization)/异步(asynchronization) 的区别
  4. 青藏高原地下巨型空间形成原因
  5. 等差数列划分Python解法
  6. 数据库原理及应用【一】引言
  7. 12-- 缺失的第一个正数
  8. burp的intruder报错Payload set 1: Invalid number settings
  9. 【开通指南】 实时计算 Flink 全托管版本
  10. 【Qt串口调试助手】1.2 - 串口数据接收不发生换行,CH340 / CP2102 多硬件兼容
  11. 20190905:(leetcode习题)爬楼梯
  12. @transactional可以用在controller层吗_Spring还可以这样用缓存,你知道吗?
  13. 决策树之ID3、C4.5、C5.0等五大算法及python实现
  14. 聚类分析-K均值matlab(一)
  15. vagrant:修改Linux网络设置
  16. python实现阿拉伯数字和罗马数字的互相转换
  17. fisco bcos PerformanceDT.java 源码解析阅读注释
  18. AD17 保存PCB文件时提示失败
  19. dnf服务器文件夹,有效提升DNF游戏稳定性 缓存文件清理教学
  20. 《左耳听风》-ARTS-打卡记录-模板

热门文章

  1. 【Android_CN_OAID】安卓设备唯一标识解决方案,可作为移动安全联盟统一 SDK (miit_mdid_xxx.aar)的替代方案。
  2. 利用计算机的随机模拟结果帮助学生,数学《教学反思》 初中白小曼
  3. 前端安全 XSS跨站脚本攻击-CSRF跨站请求伪造攻击
  4. 诊断某段时间数据库性能抖动问题思路
  5. android webview 清除缓存,Android webView 缓存处理
  6. html读取fbx文件,读取Fbx文件中的信息.doc
  7. arcgis软件界面字体太小
  8. HTML动态分页函数
  9. visio中使用连接线连接形状
  10. 12、URL后端编码解码工具