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


Posted in PHP onOctober 31, 2014

这是一个不错的示例,直接贴代码,首先要知道纬度值、经度值

/** 
* @desc 根据两点间的经纬度计算距离 
* @param float $lat 纬度值 
* @param float $lng 经度值 
*/ 
function getDistance($lat1, $lng1, $lat2, $lng2) 
{ 
$earthRadius = 6367000; //approximate radius of earth in meters 

/* 
Convert these degrees to radians 
to work with the formula 
*/ 

$lat1 = ($lat1 * pi() ) / 180; 
$lng1 = ($lng1 * pi() ) / 180; 

$lat2 = ($lat2 * pi() ) / 180; 
$lng2 = ($lng2 * pi() ) / 180; 

/* 
Using the 
Haversine formula 

http://en.wikipedia.org/wiki/Haversine_formula 

calculate the distance 
*/ 

$calcLongitude = $lng2 - $lng1; 
$calcLatitude = $lat2 - $lat1; 
$stepOne = pow(sin($calcLatitude / 2), 2) + cos($lat1) * cos($lat2) * pow(sin($calcLongitude / 2), 2); 
$stepTwo = 2 * asin(min(1, sqrt($stepOne))); 
$calculatedDistance = $earthRadius * $stepTwo; 

return round($calculatedDistance); 
}
PHP 相关文章推荐
基于PHP与XML的PDF文档生成技术
Oct 09 PHP
粗略计算在线时间,bug:ip相同
Dec 09 PHP
让PHP开发者事半功倍的十大技巧小结
Apr 20 PHP
php json_encode奇怪问题说明
Sep 27 PHP
在wamp集成环境下升级php版本(实现方法)
Jul 01 PHP
php版小黄鸡simsimi聊天机器人接口分享
Jan 26 PHP
一个经典的PHP文件上传类分享
Nov 18 PHP
PHP多线程类及用法实例
Dec 03 PHP
php中return的用法实例分析
Feb 28 PHP
简单谈谈PHP vs Node.js
Jul 17 PHP
php版微信公众平台接口开发之智能回复开发教程
Sep 22 PHP
PHP cookie,session的使用与用户自动登录功能实现方法分析
Jun 05 PHP
ThinkPHP在新浪SAE平台的部署实例
Oct 31 #PHP
封装ThinkPHP的一个文件上传方法实例
Oct 31 #PHP
ThinkPHP无限级分类原理实现留言与回复功能实例
Oct 31 #PHP
ThinkPHP控制器间实现相互调用的方法
Oct 31 #PHP
ThinkPHP上使用多说评论插件的方法
Oct 31 #PHP
让ThinkPHP支持大小写url地址访问的方法
Oct 31 #PHP
set_exception_handler函数在ThinkPHP中的用法
Oct 31 #PHP
You might like
单位速度在实战中的运用
2020/03/04 星际争霸
php中echo()和print()、require()和include()等易混淆函数的区别
2012/02/22 PHP
jQueryUI的Dialog的简单封装
2010/06/07 Javascript
JavaScript 5 新增 Array 方法实现介绍
2012/02/06 Javascript
日历查询的算法 如何计算某一天是星期几
2012/12/12 Javascript
window.event.keyCode兼容IE和Firefox实现js代码
2013/05/30 Javascript
javascript中的绑定与解绑函数应用示例
2013/06/24 Javascript
Js冒泡事件详解及阻止示例
2014/03/21 Javascript
JQuery对表格进行操作的常用技巧总结
2014/04/23 Javascript
js实现飞入星星特效代码
2014/10/17 Javascript
JS+DIV实现鼠标划过切换层效果的方法
2015/05/25 Javascript
javascript显示中文日期的方法
2015/06/18 Javascript
Bootstrap3 Grid system原理及应用详解
2016/09/30 Javascript
提高JavaScript执行效率的23个实用技巧
2017/03/01 Javascript
JSON与js对象序列化实例详解
2017/03/16 Javascript
AngularJS中$http使用的简单介绍
2017/03/17 Javascript
详解如何让InstantClick兼容MathJax、百度统计等
2017/09/12 Javascript
旺旺在线客服代码 旺旺客服代码生成器
2018/01/09 Javascript
angularjs结合html5实现拖拽功能
2018/06/25 Javascript
vue实现购物车小案例
2019/09/27 Javascript
15分钟学会vue项目改造成SSR(小白教程)
2019/12/17 Javascript
微信小程序自定义菜单切换栏tabbar组件代码实例
2019/12/30 Javascript
python绘图方法实例入门
2015/05/19 Python
python中kmeans聚类实现代码
2018/02/23 Python
Pandas:DataFrame对象的基础操作方法
2018/06/07 Python
pandas取出重复数据的方法
2019/07/04 Python
python中图像通道分离与合并实例
2020/01/17 Python
python使用paramiko实现ssh的功能详解
2020/03/06 Python
使用pth文件添加Python环境变量方式
2020/05/26 Python
Keras之自定义损失(loss)函数用法说明
2020/06/10 Python
CSS3实现瀑布流布局与无限加载图片相册的实例代码
2016/12/22 HTML / CSS
如何判断计算机可能已经中马
2013/03/22 面试题
C#笔试题
2015/07/14 面试题
环卫工作个人总结
2015/03/04 职场文书
刑事辩护词范文
2015/05/21 职场文书
应收账款管理制度
2015/08/06 职场文书