php计算两个经纬度地点之间的距离

php计算两个指定的经纬度地点之间的距离,这个在做计算给定某个地点的经纬度,计算其附近的商业区,以及给定地点与附近各商业区之间的距离的时候,还是用的到的。下面是具体的函数代码以及用法示例。

关于如何获取某个地址的经纬度,可参照本站文章:

谷歌地图第三版根据地理位置获取经纬度的方法

<?php
/**
*求两个已知经纬度之间的距离,单位为米
*@param lng1,lng2 经度
*@param lat1,lat2 纬度
*@return float 距离,单位米
*@author www.Alixixi.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里路,据我以前经常往返于这两点一线的经验,应该还差不多吧。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索地点获取
, 谷歌地图 经纬度
, 经纬度
, 海量经纬度
, 两个
, java 经纬度计算 距离
, 距离计算
, 反算经纬度
, 经纬度geolocationandroidgeo
, #经纬度
, 附近
, 之间
, 纬度
示例
php经纬度计算距离、经纬度计算距离、经纬度计算距离公式、根据经纬度计算距离、经纬度距离计算器,以便于您获取更多的相关知识。

时间: 2024-10-29 18:33:59

php计算两个经纬度地点之间的距离的相关文章

计算两个latitude-longitude点之间的距离? (Haversine公式)

问题描述 如何计算纬度和经度指定的两点之间的距离?为了澄清,我想要距离公里;这些点使用WGS84系统,我想了解可用方法的相对准确性.最佳解决方案 这个link可能对您有帮助,因为它详细说明了使用Haversine formula计算距离. 摘抄: This script [in Javascript] calculates great-circle distances between the two points – that is, the shortest distance over the

PHP计算百度地图两个GPS坐标之间的距离代码

以下是我分享的用PHP计算两个GPS经纬度坐标之间的距离的代码,有需要的朋友可以直接拿去用.  代码如下 复制代码 /**  * 计算两个坐标之间的距离(米)  * @param float $fP1Lat 起点(纬度)  * @param float $fP1Lon 起点(经度)  * @param float $fP2Lat 终点(纬度)  * @param float $fP2Lon 终点(经度)  * @return int  */ function distanceBetween($f

P使用strtotime计算两个给定日期之间天数的方法

 这篇文章主要介绍了PHP使用strtotime计算两个给定日期之间天数的方法,实例分析了php操作时间的技巧,非常具有实用价值,需要的朋友可以参考下     本文实例讲述了PHP使用strtotime计算两个给定日期之间天数的方法.分享给大家供大家参考.具体分析如下: PHP的strtotime函数用于将任何英文文本的日期时间描述解析为Unix时间戳.这个函数将使用TZ环境变量(如果有的话)来计算时间戳.如果执行成功它返回一个时间戳,否则返回FALSE.在PHP 5.1.0之前,这个函数将返回

PHP使用strtotime计算两个给定日期之间天数的方法_php技巧

本文实例讲述了PHP使用strtotime计算两个给定日期之间天数的方法.分享给大家供大家参考.具体分析如下: PHP的strtotime函数用于将任何英文文本的日期时间描述解析为Unix时间戳.这个函数将使用TZ环境变量(如果有的话)来计算时间戳.如果执行成功它返回一个时间戳,否则返回FALSE.在PHP 5.1.0之前,这个函数将返回-1. $date1 = date('Y-m-d'); $date2 = '2005-03-01′; $days = (strtotime() – strtot

android代码布局-android 代码中设置控件的垂直居中和两个控件之间的距离。

问题描述 android 代码中设置控件的垂直居中和两个控件之间的距离. 因为数据是动态的 所以所有的控件和布局都是在java代码里面设置 怎样才能让一个控件垂直居中 还有两个控件之间的距离又是怎么设置的啊 求高手指点啊 最好能给点代码 我是新手 说的太笼统了 看不太懂 谢谢了 解决方案 LinearLayout.LayoutParams params = new LinearLayout.LayoutParams( LinearLayout.LayoutParams.FILL_PARENT,

坐标距离计算:php 计算 两个坐标之间的距离

<?php  define('EARTH_RADIUS', 6378.137);//地球半径  define('PI', 3.1415926);  /**  * 计算两组经纬度坐标 之间的距离  * params :lat1 纬度1: lng1 经度1: lat2 纬度2: lng2 经度2: len_type (1:m or 2:km);  * return m or km  */  function GetDistance($lat1, $lng1, $lat2, $lng2, $len_t

给你两个经纬度,计算他们之间的距离

原文:给你两个经纬度,计算他们之间的距离 这些经纬线是怎样定出来的呢?地球是在不停地绕地轴旋转(地轴是一根通过地球南北两极和地球中心的假想线),在地球中腰画一个与地轴垂直的大圆圈,使圈上的每一点都和南北两极的距离相等,这个圆圈就叫作"赤道".在赤道的南北两边,画出许多和赤道平行的圆圈,就是"纬圈":构成这些圆圈的线段,叫做纬线.我们把赤道定为纬度零度,向南向北各为90度,在赤道以南的叫南纬,在赤道以北的叫北纬.北极就是北纬90度,南极就是南纬90度.纬度的高低也标志

两个经纬度计算他们距离 Java/C#/C

经纬度计算距离原理 经纬度互换 度(DDD):E 108.90593度    N 34.21630度     如何将度(DDD):: 108.90593度换算成度分秒(DMS)东经E 108度54分22.2秒?转换方法是将108.90593整数位不变取108(度),用0.90593*60=54.3558,取整数位54(分),0.3558*60=21.348再取整数位21(秒),故转化为108度54分21秒.    同样将度分秒(DMS):东经E 108度54分22.2秒 换算成度(DDD)的方法

java实现计算地理坐标之间的距离_java

java实现计算两经纬度点之间的距离,直接上代码,具体解释请参考注释 复制代码 代码如下: package com.jttx.poi.utils; import com.jttx.poi.entity.Point; /**  * Created by louis on 2014/9/2.  */ public class GeoUtils {     /**      * 计算两经纬度点之间的距离(单位:米)      * @param lng1  经度      * @param lat1