在谷歌API中根据纬度和经度计算地址(一个请求中计算多个地址)


Calculate address from latitude and longitude in google API (More than one address calculation in one request)

Reveres Geocoding的这个功能对我来说很好。我必须在标记的信息窗口中显示地址,一张地图中有200多个。我构建了下面的代码,它运行得很好。然而,谷歌的API请求限制2500/天很容易被超过。有什么办法可以bulk request谷歌的API吗?

我们的项目目前是一个小项目,所以每天购买更多的请求不是我们的选择。

<?php 
function getaddress($lat,$lng)
{
  $url = 'http://maps.googleapis.com/maps/api/geocode/json?latlng='.trim($lat).','.trim($lng).'&sensor=false';
  $json = @file_get_contents($url);
  $data=json_decode($json);
  $status = $data->status;
  if($status=="OK")
  return $data->results[0]->formatted_address;
  else
  return false;
}
?>

不,使用标准API时,您不能"批量查询"一组地址,并且只能将其计算为一个请求。每次查找都算作一个请求。

还有其他API没有限制,或者允许更多的查找,比如MapQuest。如果你在谷歌上达到了每日限额,试着使用另一个API。