php获取两经纬度之间的距离
2016-03-22 10:03
573 查看
/** * 根据两点间的经纬度计算距离,返回千米 * * @param float $lat * 纬度值 * @param float $lng * 经度值 */ function getDistance($lat1, $lng1, $lat2, $lng2) { $earthRadius = 6367000; // approximate radius of earth in meters $lat1 = ($lat1 * pi ()) / 180; $lng1 = ($lng1 * pi ()) / 180; $lat2 = ($lat2 * pi ()) / 180; $lng2 = ($lng2 * pi ()) / 180; $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 ) ) ) * 0.001; $calculatedDistance = $earthRadius * $stepTwo; return round ( $calculatedDistance, 2 ); }
相关文章推荐
- php的socket通信
- 如何开始使用Laravel
- Zend Framework实现具有基本功能的留言本(附demo源码下载)
- 修改symfony php 上传文件限制
- php时间
- PHP图片处理之图片背景、画布操作
- php 给图片增加背景平铺水印代码
- FTP 简单命令
- Zend Framework分页类用法详解
- Thinkphp的缓存(Cache)以及S函数
- PHP基础之搭建WAMP环境
- PHP面向对象 实例化 构造函数 封装 继承 静态
- Zend Framework生成验证码并实现验证码验证功能(附demo源码下载)
- 进阶级-正则表达式
- PHP学习笔记-PHP语言基础1
- Laravel 学习笔记——路由(中间件与路由组)
- php版本的discuzX3.2部署的问题收集
- php环境搭建工具包推荐
- ubuntu 搭建LNMP + Yii
- Zend Framework生成验证码并实现验证码验证功能(附demo源码下载)