PHP计算2点经纬度之间的距离代码


Posted in PHP onAugust 12, 2013
function getDistanceBetweenPointsNew($latitude1, $longitude1, $latitude2, $longitude2) {
    $theta = $longitude1 - $longitude2;
    $miles = (sin(deg2rad($latitude1)) * sin(deg2rad($latitude2))) + (cos(deg2rad($latitude1)) * cos(deg2rad($latitude2)) * cos(deg2rad($theta)));
    $miles = acos($miles);
    $miles = rad2deg($miles);
    $miles = $miles * 60 * 1.1515;
    $feet = $miles * 5280;
    $yards = $feet / 3;
    $kilometers = $miles * 1.609344;
    $meters = $kilometers * 1000;
    return compact('miles','feet','yards','kilometers','meters'); 
}$point1 = array('lat' => 40.770623, 'long' => -73.964367);
$point2 = array('lat' => 40.758224, 'long' => -73.917404);
$distance = getDistanceBetweenPointsNew($point1['lat'], $point1['long'], $point2['lat'], $point2['long']);
foreach ($distance as $unit => $value) {
    echo $unit.': '.number_format($value,4).'<br />';
}
The example returns the following:
miles: 2.6025
feet: 13,741.4350
yards: 4,580.4783
kilometers: 4.1884
meters: 4,188.3894
PHP 相关文章推荐
文件上传类
Oct 09 PHP
简单示例AJAX结合PHP代码实现登录效果代码
Jul 25 PHP
配置Apache2.2+PHP5+CakePHP1.2+MySQL5运行环境
Apr 25 PHP
从php核心代码分析require和include的区别
Jan 02 PHP
防止用户利用PHP代码DOS造成用光网络带宽
Mar 01 PHP
基于AppServ,XAMPP,WAMP配置php.ini去掉警告信息(NOTICE)的方法详解
May 07 PHP
PHP之生成GIF动画的实现方法
Jun 07 PHP
PHP面向对象程序设计之接口用法
Aug 20 PHP
php中mail函数发送邮件失败的解决方法
Dec 24 PHP
Zend Framework入门教程之Zend_Registry组件用法详解
Dec 09 PHP
PHP去除字符串最后一个字符的三种方法实例
Mar 01 PHP
thinkphp5 路由分发原理
Mar 18 PHP
php读取csv文件后,uft8 bom导致在页面上显示出现问题的解决方法
Aug 10 #PHP
浅析php中常量,变量的作用域和生存周期
Aug 10 #PHP
浅析linux下apache服务器的配置和管理
Aug 10 #PHP
本地机apache配置基于域名的虚拟主机详解
Aug 10 #PHP
php 删除目录下N分钟前创建的所有文件的实现代码
Aug 10 #PHP
php中如何判断一个网页请求是ajax请求还是普通请求
Aug 10 #PHP
php一些错误处理的方法与技巧总结
Aug 10 #PHP
You might like
如何隐藏你的.php文件
2007/01/04 PHP
PHP URL地址获取函数代码(端口等) 推荐
2010/05/15 PHP
ThinkPHP3.1基础知识快速入门
2014/06/19 PHP
php抽象方法和抽象类实例分析
2016/12/07 PHP
JavaScript prototype属性使用说明
2010/05/13 Javascript
js抽奖实现随机抽奖代码效果
2013/12/02 Javascript
js获取时间并实现字符串和时间戳之间的转换
2015/01/05 Javascript
JQuery删除DOM节点的方法
2015/06/11 Javascript
JavaScript函数学习总结以及相关的编程习惯指南
2015/11/16 Javascript
深入浅析JS是按值传递还是按引用传递(推荐)
2016/09/18 Javascript
JavaScript正则替换HTML标签功能示例
2017/03/02 Javascript
NodeJs通过async/await处理异步的方法
2017/10/09 NodeJs
详解小程序不同页面之间通讯的解决方案
2018/11/23 Javascript
Node.js 多线程完全指南总结
2019/03/27 Javascript
JavaScript中BOM对象原理与用法分析
2019/07/09 Javascript
Vue+ElementUI使用vue-pdf实现预览功能
2019/11/26 Javascript
你知道JavaScript Symbol类型怎么用吗
2020/01/08 Javascript
JavaScript之scrollTop、scrollHeight、offsetTop、offsetHeight等属性学习笔记
2020/07/15 Javascript
mapboxgl实现带箭头轨迹线的代码
2021/01/04 Javascript
[01:00:30]完美世界DOTA2联赛循环赛 Inki vs Matador BO2第二场 10.31
2020/11/02 DOTA
python批量提交沙箱问题实例
2014/10/08 Python
详解Python中列表和元祖的使用方法
2015/04/25 Python
利用Python开发微信支付的注意事项
2016/08/19 Python
Python 将pdf转成图片的方法
2018/04/23 Python
在PyCharm中实现关闭一个死循环程序的方法
2018/11/29 Python
基于Django signals 信号作用及用法详解
2020/03/28 Python
Python进行统计建模
2020/08/10 Python
HTML5+Canvas+CSS3实现齐天大圣孙悟空腾云驾雾效果
2016/04/26 HTML / CSS
加热夹克:RAVEAN
2018/10/19 全球购物
世界上最好的足球商店:Unisport
2019/03/02 全球购物
银行毕业实习自我鉴定
2013/09/19 职场文书
培训主管岗位职责
2014/02/01 职场文书
超市总经理岗位职责
2014/02/02 职场文书
2014年师德师风自我剖析材料
2014/09/27 职场文书
2015年度电厂个人工作总结
2015/05/13 职场文书
《家庭教育》读后感3篇
2019/12/18 职场文书