当我尝试通过谷歌服务将地址转换为纬度和经度时,我遇到了问题。我的地址是1456 sok。 no:10/1 kat:8 Alsancak。问题是当我将此地址写入url时,会返回正确的结果,但是当我使用下面的php代码时,我得到的结果为零。
结果没问题:
php的问题:
<?php
header('Content-Type: text/html; charset=utf-8');
getGoogleAddressCoordinates("1456 sok. no: 10/1 kat:8 Alsancak");
function getGoogleAddressCoordinates($address)
{
//$address = urlencode($address);
$address = str_replace(" ", "%20", $address);
$request = file_get_contents('http://maps.google.com/maps/api/geocode/json?address=' . $address . '&sensor=true');
$json = json_decode($request, true);
print_r ($json);
}
&GT;
答案 0 :(得分:0)
地址1456 sok. no: 10/1 kat:8 Alsancak
无效。如果你在谷歌地图中尝试它也会得到零结果。
尝试使用:1456 sok. 10/1 Alsancak
并取消注释第$address = urlencode($address);
行并清除第$address = str_replace(" ", "%20", $address);
行。
网址应如下所示:
http://maps.google.com/maps/api/geocode/json?address=1456%20sok.%2010%2F1%20Alsancak&sensor=true