反向地理编码在php中随机响应

时间:2011-10-28 12:43:51

标签: php google-maps

我试过google reverse geocode.Following函数多次调用for循环...这个随机工作...有时响应地址完美......有时没有响应......这里有什么问题......

function reversegeo($ilatt,$ilonn)
{

$url1='http://maps.googleapis.com/maps/api/geocode/json?latlng='.$ilatt.','.$ilonn.'&sensor=false';
$ch1 = curl_init();
curl_setopt($ch1, CURLOPT_URL, $url1);
curl_setopt($ch1, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch1, CURLOPT_REFERER, 'http://www.mywebsiteurl.com/Trackfiles/report.php');
$body1 = curl_exec($ch1);
curl_close($ch1);
$json1 = json_decode($body1);
$add=$json1->results[0]->formatted_address;
return $add;
}

1 个答案:

答案 0 :(得分:1)

您可能经常或太快地击中服务器。使用sleep()添加一些延迟。

另外,当你说“没有回应”时,你需要更加具体。如果您经常使用它,谷歌会提供错误代码,它不会一无所获。

而不是:

$body1 = curl_exec($ch1);

执行:

if(($body1 = curl_exec($ch1)) === false) {
  echo 'Curl error: ' . curl_error($ch);
}