如何使用 php 通过谷歌地图获取步行或驾车距离

Posted

技术标签:

【中文标题】如何使用 php 通过谷歌地图获取步行或驾车距离【英文标题】:How to get walking or driving distance via google maps with php 【发布时间】:2009-06-08 10:25:39 【问题描述】:

我以前使用过谷歌地图,但在实施它时,我从未找到任何关于如何通过 javascriptphp 获取 2 个给定位置之间的确切距离的文档。

1) 它必须是地图上显示的完全相同的距离,而不是给出从一个地理点到另一个地理点的直线距离的公式。

2) 它必须是 PHP 或 Javascript

3) 必须是谷歌地图,而不是虚拟地球或类似的东西。

我想出的最好的方法是使用带有变量的长 URL 向谷歌地图发送 HTTP_GET 请求,然后返回 200 代码和网站的 html。距离在某处,只需要过滤即可。

但这是资源密集型和负载繁重的。

有人知道更好的方法吗?

编辑:this 是我正在谈论的功能。 DLL 不包含在 Windows 的常规 zip 文件中,我发现它是 WAMPserver 软件的一部分。

【问题讨论】:

【参考方案1】:

This posting 给出了方法和警告。

要分解它,您可以使用谷歌地图查询这样的网址

http://maps.google.com/maps?q=from+A+to+B&output=kml

然后您查看从该 url 检索到的数据(以 kml 格式)并查看地标标签(通过 simplexml 运行它)每个地标标签将有一个描述子项,该子项将包含下一步的文本描述从 A 到 B 的路线。

文章中还提到,通过使用这种方法,您将受到谷歌地图条款和条件的约束

此外,您不得在 给您或任何其他人的方式 访问大量下载的人或 数字纬度的批量馈送 和经度坐标。

所以你可能要记住这一点。

【讨论】:

想象一个网站,当您与伴侣外出时,您可以将宝宝放在某个地方。保姆。对于每个人,您要开车到孩子的距离都不一样,因此他们需要在搜索字段中输入最大距离,然后我可以创建一个开车落在该距离内的站点成员列表。该数据库不包含数值,只有街道名称和门牌号码。 我只是不确定如果 T&C 未包含在 API 中,您是否可以查询此类内容。我已经为您提供了方法,但如果您要通过此方式获利,我会希望您的行为在法律上得到 Google 的允许。

以上是关于如何使用 php 通过谷歌地图获取步行或驾车距离的主要内容,如果未能解决你的问题,请参考以下文章

计算gps点之间的步行距离

使用百度地图JavaScript实现驾车/公交/步行导航功能

高德导航中怎么计算起点和终点之间行程的距离

用于驾车和步行路线的 Google Maps HTTP API

百度地图上的绿色箭头是啥 有三个方向

Android 百度地图API 如何计算两个坐标之间的驾车距离?