【发布时间】:2013-10-30 10:33:47
【问题描述】:
我正在尝试为我的数据库对一堆地址进行反向地理编码。我有大约 200 个地址,其中一半的工作就像一个魅力......我确实将谷歌地图请求放在一个循环中并且它工作。大约有 100 个地址返回了“无效请求”消息。我回显了请求 url 并将其放入我的浏览器中,它返回了“状态:确定”和所有数据。为什么我的脚本返回无效请求而另一个浏览器选项卡返回正常?
这就是我使用的功能:
function getLatLon($strasse, $plz) {
$inhalt = simplexml_load_file('http://maps.googleapis.com/maps/api/geocode/xml?address='.$strasse.',+'.$plz.'&sensor=true');
$geo['lat'] = $inhalt->result->geometry->location->lat;
$geo['lon'] = $inhalt->result->geometry->location->lng;
return $geo;
}
明确的请求 url 如下所示: http://maps.googleapis.com/maps/api/geocode/xml?address=Dreik%C3%B6nigstra%C3%9Fe+12,+Erlangen&sensor=true
如果有人可以帮助我或检测错误,那就太棒了:) 问候, 菲利普
【问题讨论】:
-
检查 $strasse 和 $plz 对于那些不起作用的输入是否有效(尝试将它们与那些起作用的输入进行比较),如果它在某些时候有效,这很可能是问题。
-
嗨,是的,我也这么认为,但即使消除了所有空格和特殊字符,也没有任何变化:(
标签: php google-maps google-api reverse-geocoding