如何计算经纬度之间的距离_根据经纬度算距离

如何计算经纬度之间的距离_根据经纬度算距离用php计算两个指定的经纬度地点之间的距离,代码:/***求两个已知经纬度之间的距离,单位为米*@paramlng1,lng2经度*@paramlat1,lat2纬度*@returnfloat距离,单位米*@editwww.jbxue.com**/functiongetdistance($lng1,$lat1,$lng2,$lat2){//将角度转为狐度$radLat1=deg2r…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

用php计算两个指定的经纬度地点之间的距离,代码:

/**

*求两个已知经纬度之间的距离,单位为米

*@param lng1,lng2 经度

*@param lat1,lat2 纬度

*@return float 距离,单位米

*@edit www.jbxue.com

**/

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;

}

?>

举例,“上海市延安西路2055弄”到“上海市静安寺”的距离:

上海市延安西路2055弄 经纬度:31.2014966,121.40233369999998

上海市静安寺 经纬度:31.22323799999999,121.44552099999998

那么:

复制代码 代码示例:

echo getdistance(31.2014966,121.40233369999998,31.22323799999999,121.44552099999998);

结果为:4970.4248747365 ,约4970米,大约10里路。

几乎接近真实的距离了,看来用php计算两个经纬度地点之间的距离,还是靠谱的,呵呵。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/193149.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Could not find resource com.occupation.mapper/StudentsMapper.xml_小晓_同学__新浪博客

    Could not find resource com.occupation.mapper/StudentsMapper.xml_小晓_同学__新浪博客错误的原因:路径不能写为com.occupation.mapper需要用斜杠

    2022年7月11日
    23
  • Oracle学习(十):视图,索引,序列号,同义词

    Oracle学习(十):视图,索引,序列号,同义词

    2022年1月30日
    44
  • mariadb 的安装及基本配置

    mariadb 的安装及基本配置文章目录一、mariadb介绍二、mariadb下载及安装三、mariadb的启停命令四、mariadb的配置五、添加用户,设置权限Navicat连接数据库一、mariadb介绍MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎

    2022年5月16日
    66
  • vb中如何连接mysql_vb怎么连接数据库「建议收藏」

    vb怎么连接数据库[编辑]概述我们对数据库进行操作时,一方面要使用户可以在程序界面上对需要的数据进行访问;另一方面可以对数据库中的数据进行各种操作,最终的操作结果还要反馈给用户。一、Data控件1.设置数据控件的属性2.将Data控件连到一个特定的数据库和其中的一个表上3.在VB中建立一个标准的工程4.在窗体中添加控件(Data1就是一个Data控件)5.改变控件的一些属性6.对Data控件进行设…

    2022年4月16日
    59
  • ubuntu20.04内核降级_ubuntu内核版本查看

    ubuntu20.04内核降级_ubuntu内核版本查看ubuntu内核突然变了,导致nvidia显卡驱动用不了:进行内核降级:解决方法:查找可用的内核版本:#grepmenuentry/boot/grub/grub.cfg修改grub:#vim/etc/default/grub找到:GRUB_DEFAULT=0修改为:GRUB_DEFAULT=“AdvancedoptionsforUbuntu>Ubuntu,w…

    2022年8月23日
    7
  • github开发人员在七夕搞事情:remote: Support for password authentication was removed on August 13, 2021.

    github开发人员在七夕搞事情:remote: Support for password authentication was removed on August 13, 2021.1问题描述如果你在七夕(没错就是2020年8月14日)的这一天刚好加班,又刚好去访问了全球最大的同性交友网站,又刚好去更新提交代码,又或你创建了一个新的仓库送给自己,又刚好想把这个仓库送给(push)github,你就刚好会遇到这个问题:remote:SupportforpasswordauthenticationwasremovedonAugust13,2021.Pleaseuseapersonalaccesstokeninstead.具体如下:(yolov4)

    2022年7月20日
    27

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号