Hay,我想知道如何使用PHP和Google Maps Api计算出两个邮政编码之间的距离。
任何人都有任何想法或示例链接。
假设您要查找地理距离,首先需要使用Google
Maps服务器端地理编码服务
获取两个邮政编码的纬度和经度,如以下示例所示:
$url = 'http://maps.google.com/maps/geo?q=EC3M,+UK&output=csv&sensor=false';
$data = @file_get_contents($url);
$result = explode(",", $data);
echo $result[0]; // status code
echo $result[1]; // accuracy
echo $result[2]; // latitude
echo $result[3]; // longitude
然后,您可以使用如下所示的大圆距离实现来计算两个邮政编码的坐标之间的距离:
请注意,服务器端地理编码服务只能与在Google地图上显示结果结合使用;Google Maps
API服务条款许可限制
禁止对结果进行地理编码而不在地图上显示结果。
更新:
如果您是在寻找行驶距离而不是地理距离,请注意,目前尚无记录和批准的方法可通过服务器端的HTTP请求访问Google Maps Directions API。
但是,以下是未记录的返回JSON输出的方法:
http://maps.google.com/maps/nav?q=from:London%20to:Dover
这将返回驾驶方向以及JSON格式的总驾驶距离:"meters":122977
。
q
参数的格式应为from:xxx%20to:yyy
。将xxx和yyy分别替换为开始和目标。您可以使用纬度和经度坐标来代替完整地址:
http://maps.google.com/maps/nav?q=from:51.519894,-0.105667%20to:51.129079,1.306925
请注意,这不仅没有记录,而且还可能违反了Google Maps
API条款
10.1和10.5的限制。
问题内容: 我从此页面上获取了邮政编码以及它们的经度/纬度等数据库 。它具有以下字段: ZIP,LATITUDE,LONGITUDE,城市,州,县,ZIP_CLASS 数据在文本文件中,但是我将其插入到MySQL表中。我现在的问题是,我如何利用以上字段来计算用户可以在网站上输入的两个邮政编码之间的距离?PHP中的工作代码将不胜感激 问题答案: 您也可以尝试点击网络服务以计算距离。让别人来做繁重的工
问题内容: 我必须计算2个点之间的距离,X和Y是第一个点的坐标,而axisX和axisY是第二个点的坐标。我唯一的线索是此SQL语句,但是此SQL不会返回我要查找的结果。那么,有谁能帮助我确定我在此声明中可能犯的任何错误? 问题答案: 我假设axisX和axisY是您的坐标。这使用距离计算技术,可以为您提供更准确的读数。 http://www.meridianworlddata.com/Dista
我试图使用Scala类计算两点之间的距离。但它给出了一个错误说 类型不匹配;发现:其他。需要类型(具有基础类型点):?{def x:?}请注意,隐式转换不适用,因为它们是不明确的:在[A](x:A)类型的对象Predef中确保[A]的方法any2Ensuring和在[A](x:A)“ArroAssoc[A]类型的对象Predef中的方法Ani2ArrowasSoc都是可能的其他转换函数。输入到?{
问题内容: 我需要创建一个类来计算两点之间的距离。我被困住了,我是一个完全的初学者。这是我的课程: 第二课。 我不确定如何在两个定义的点之间获取点对象(中间点)。 我可以创建点对象,但不确定如何通过位于这两个点对象之间的方法返回点对象。 问题答案: 平面上的两个点(x1,y1)和(x2,y2)之间的距离为: 但是,如果您想要的只是两个点的中点,则应将中点函数更改为: 这将返回一个全新的点对象,其点
问题内容: 我对计算两个numpy数组(x和y)之间的各种空间距离感兴趣。 http://docs.scipy.org/doc/scipy-0.14.0/reference/generation/scipy.spatial.distance.cdist.html 但是,以上结果会产生太多不必要的结果。我如何仅将其限制为所需的结果。 我想计算[1,11]和[31,41]之间的距离;[2,22]和[3
我对计算两个numpy阵列(x和y)之间的各种空间距离感兴趣。 http://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.spatial.distance.cdist.html 但是,上述结果会产生太多不需要的结果。我怎样才能限制它只用于我所需的结果。 我想计算[1,11]和[31,41]之间的距离;[2,22]和[32,42