我如何使用带有PHP的API或web服务在世界各地使用邮政编码查找城市和州?

我如何使用带有PHP的API或web服务在世界各地使用邮政编码查找城市和州?,php,google-maps,yahoo-maps,Php,Google Maps,Yahoo Maps,如何使用带有PHP的API或web服务从世界各地的邮政编码中查找城市和州?我曾尝试过谷歌地图通用编码API,它对美国和加拿大很好,但对英国和墨西哥不适用于所有国家。我还使用了YahooAPI,它比Google工作得更好,但针对一些邮政编码和邮政编码,它会返回来自不同国家的结果 有人知道我可以使用哪种API或数据库吗?如果我必须根据美国、英国、加拿大和墨西哥的邮政编码获取城市和州/省的数据?嗯,不太确定这是你想要的,但我正在做类似的工作。我一直在使用以下免费web服务。用户输入要在web服务调用中

如何使用带有PHP的API或web服务从世界各地的邮政编码中查找城市和州?我曾尝试过谷歌地图通用编码API,它对美国和加拿大很好,但对英国和墨西哥不适用于所有国家。我还使用了YahooAPI,它比Google工作得更好,但针对一些邮政编码和邮政编码,它会返回来自不同国家的结果


有人知道我可以使用哪种API或数据库吗?如果我必须根据美国、英国、加拿大和墨西哥的邮政编码获取城市和州/省的数据?

嗯,不太确定这是你想要的,但我正在做类似的工作。我一直在使用以下免费web服务。用户输入要在web服务调用中使用的国家/地区和邮政编码

文件: www.geonames.org/export/web-services.html

用户需要输入国家和邮政编码。要获取国家列表,请执行以下操作: **注册并用您的注册id替换演示

使用从上述服务中选择的国家/地区代码和邮政编码,拨打:


希望这能有所帮助。

这里有一个Web服务可以做到这一点

  $doc = new DOMDocument();
  $url = 'http://maps.googleapis.com/maps/api/geocode/xml?address='.$_GET['Zip'].'@&sensor=true';
  $doc->load($url);
  $result = $doc->getElementsByTagName( "address_component" );
  $i=0;
  foreach( $result as $address_component )
  {
      $short_names = $address_component->getElementsByTagName( "long_name" );
      $short_name = $short_names->item(0)->nodeValue;
      if($i==1)
      {
        echo  $city=$short_name;
         break;  
      }
      $i++;

  }

…只需获取谷歌地图的GeoJson即可..通过单一或组合英国邮政编码(例如ZE1 0AE)、部门、地区、城市和地区边界进行查询

例如,英国地区“曼彻斯特” …/boundary/uk?district=曼彻斯特将为您提供以下GeoJson(该地区的所有扇区边界

您可以为我们使用zipcodes:


你在试图找到沃尔多,是吗!?我想可能是我没弄好。我想谷歌必须为所有人工作,但事实并非如此。雅虎也是如此。