如何确定谷歌地图是否真的显示了一个有效的地址?



我正在构建一个项目,由用户输入纬度和经度,我用它来转换为谷歌地图:

<iframe width="100%" height="450" frameborder="0" style="border:0" src="https://www.google.com/maps/embed/v1/place?q=<?=$foo->getLocationLat()?>,<?=$foo->getLocationLong()?>&amp;key=<?=$foo->getAPIKey"></iframe>

但显然,我们会遇到他们输入的经度无效的问题,因此谷歌地图将失败,等等。有没有一个优雅的解决方案来确定地图是否正确,然后再将其绘制到屏幕上?我不想将经度长传递到确定地址是否存在的方法中(这是我能想到的唯一方法(。

如果要轻松确定坐标是否有效,可以检查纬度和经度是否在各自的范围内,如此处所述。

以度为单位的有效纬度范围是 -90 和南部的 +90 和北半球。经度在 -180 范围内 和 +180 指定本初子午线以西和以东的坐标, 分别。

最后,您提到了有关地址验证的内容。这可能是一个障碍,因为纬度和经度不一定映射到特定的地址。有些坐标将映射到数百个地址,而有些坐标将映射到任何地址。如果您需要知道纬度和经度是否可能与地址匹配,可以使用 Google 地理编码 API。

最小和最大经度是+/- 180°。最小和最大纬度为+/- 90°

此范围内的任何东西都是地球上的有效位置。如果您只是在寻找不会在 google 上引发错误的坐标,这应该可以做到。

它是否是家庭或企业的有效地址需要数据库查找。这些可作为下载和 API 在商业上提供。我不相信我曾经免费见过一个,尽管它们肯定存在。

最新更新