求两个已知经纬度之间的距离,单位为米
2015-08-04 13:57
330 查看
/** *求两个已知经纬度之间的距离,单位为米 *@param lng1,lng2 经度 *@param lat1,lat2 纬度 *@return float 距离,单位米 **/ function getdistance($lng1,$lat1,$lng2,$lat2){ //将角度转为狐度 $radLat1=deg2rad($lat1);//deg2rad()函数将角度转换为弧度 $radLat2=deg2rad($lat2); $radLng1=deg2rad($lng1); $radLng2=deg2rad($lng2); $a=$radLat1-$radLat2; $b=$radLng1-$radLng2; $s=2*asin(sqrt(pow(sin($a/2),2)+cos($radLat1)*cos($radLat2)*pow(sin($b/2),2)))*6378.137*1000; return $s; }
或者sql
FORMAT(((6370996.81)*ACOS(COS( lat *PI()/180) * COS('.$str[1].'*PI()/180) * COS(( lng *PI()/180)-('.$str[0].'*PI()/180)) + SIN( lat *PI()/180)*SIN( '.$str[1].' *PI()/180)))/1000,2) as distance
相关文章推荐
- Wubi方式安装的Ubuntu调整虚拟空间大小
- Swift语法—— where语句使用
- warning: control reaches end of non-void function
- Redis常用命令手册:服务器相关命令
- 嵌入式app框架
- csu - 1659 Graph Center(最短路)
- 关于Linux/Unix的Profile文件
- 内联函数
- STL 常用算法
- Qt 常用类 (17)—— QLineEdit
- Redis常用命令手册:键值相关命令
- C# 使用ffmpeg.exe进行音频转换完整demo
- Mysql文章笔记
- NODE ACL - NODE权限管理 - 功能探索
- bind(),delegate(),on(),live(),trigger()的用法记录
- IEC104规约流程
- seoer:你的文章需要原创吗
- android自定义SurfaceView实现跑男动画
- Qt 常用类 (16)—— QRadioButton
- Redis详解:sorted sets数据类型及操作