当我得到json结果时返回零结果但是当我直接访问链接时我得到结果

时间:2014-09-30 03:16:11

标签: geocoding google-geocoding-api

我已经编写了一些PHP代码来获取以下代码的地址信息:

$geocode=file_get_contents('http://maps.googleapis.com/maps/api/geocode/json?address=Test Technology PTY Ltd., Rosslyn Street, Bellevue Hill, New South Wales, Australia&sensor=false');

$output= json_decode($geocode);
print $output;
for($j=0;$j<count($output->results[0]->address_components);$j++){
echo '<b>'.$output->results[0]->address_components[$j]->types[0].': </b>  '.$output->results[0]->address_components[$j]->long_name.'<br/>';
}

当我打印$ output时,它显示零结果。但是当我直接访问链接时:http://maps.googleapis.com/maps/api/geocode/json?address=Test Technology PTY Ltd.,Rosslyn Street,Bellevue Hill,New South Wales,Australia&amp; sensor = false在浏览器中。列出了地址信息。所以我想问一下如何更正我的代码才能使其正常工作?

非常感谢〜

1 个答案:

答案 0 :(得分:0)

如果您创建一个名为address的变量并在urlencode中换行,它将对您有用(见下文)。

$address = urlencode("Test Technology PTY Ltd., Rosslyn Street, Bellevue Hill, New South Wales, Australia");

$geocode = file_get_contents("https://maps.googleapis.com/maps/api/geocode/json?address={$address}");