使用Google(不是地理编码器)的地理编码地址

时间:2013-09-23 15:59:10

标签: php json google-maps-api-3

您可以使用Google的地图搜索(不是地理编码器)吗?例如,如果我输入谷歌地图:1249 Cedar Rd。 101切萨皮克VA 23322.它将返回正确的位置,但是当我对该地址进行地理编码时,它没有显示正确的位置(错误的纬度/长度)。我希望只使用https://maps.google.com/maps?q=1249+Cedar+Rd.+101+Chesapeake+VA+23322&ie=UTF-8&hq=&hnear=0x89baa4d9ad5e3b8b:0x844028b651d3e0cb,1249+Cedar+Rd,+Chesapeake,+VA+23322&gl=us&ei=IWJAUs_PHonV2AWoz4GwBw&ved=0CCwQ8gEwAA

如果您点击该链接,它将显示正确的位置。有没有办法使用PHP / JSON使用上面的URL?

或者,有没有办法配对谷歌地图/地方,以返回正确的地址?我正在试图找到一种获得正确地址的方法。搜索在谷歌中运行良好,但在地理编码时不行。真的很烦人....

3 个答案:

答案 0 :(得分:0)

我从地图编码API获得与地图相同的(ish)坐标:http://maps.googleapis.com/maps/api/geocode/json?address=1249%20Cedar%20Rd.%20101%20Chesapeake%20VA%2023322&sensor=false给出

  "lat" : 36.7174039802915,
  "lng" : -76.2835059197085

当我右键单击标记并选择这里的内容时,我得到的匹配(差异非常小)可能是您从地图进行地理编码的意思? :

   36.717567,
   -76.283689

这会将该点放在Google地图选择的位置旁边。这表明Google的内部查询使用的是与Geocoding API略有不同(更好?)的数据,但所有三个点都显示相同的地址。我是否遗漏了您收到错误地址的方法?

答案 1 :(得分:0)

Google Map(点击“更多”,然后点击“点击此处”以获取上面的链接)给了我36.716054,-76.284857

Google Maps Javascript API v3 geocoder返回:

1249 Cedar Road,Las Gaviotas Shopping Centre,Chesapeake,VA 23322,USA(36.716055,-76.28485490000003)

这看起来非常接近我......

答案 2 :(得分:0)

啊,我弄清楚出了什么问题。当我把它放到谷歌时,我没有正确编码地址,所以它返回了一个不同的地址。我切换到使用php urlencode()函数,它似乎正在工作。

谢谢!