Php 使用Google API根据城市和州生成邮政编码

Php 使用Google API根据城市和州生成邮政编码,php,wordpress,forms,google-maps,geocode,Php,Wordpress,Forms,Google Maps,Geocode,有没有办法根据表单中的城市/州输入查找邮政编码?我认为谷歌地理编码API可能是正确的方向。有什么想法吗?我有一个基于Wordpress的网站,所以代码必须使用PHP。提前感谢。地理编码是您查找地址坐标的地方。是的,你可以对一个城市、州进行地理编码,但这会给你城市的中心(由地理编码员的内部数据库定义,通常是一个中心或“市政厅”) 大多数城市都有多个邮政编码:您想要所有这些吗? 类似地,一个邮政编码可以包含多个城市——特别是在农村地区,那里的邮政编码可以很大,而城市就是其他国家所说的“村庄”和“小村

有没有办法根据表单中的城市/州输入查找邮政编码?我认为谷歌地理编码API可能是正确的方向。有什么想法吗?我有一个基于Wordpress的网站,所以代码必须使用PHP。提前感谢。

地理编码是您查找地址坐标的地方。是的,你可以对一个城市、州进行地理编码,但这会给你城市的中心(由地理编码员的内部数据库定义,通常是一个中心或“市政厅”)

大多数城市都有多个邮政编码:您想要所有这些吗? 类似地,一个邮政编码可以包含多个城市——特别是在农村地区,那里的邮政编码可以很大,而城市就是其他国家所说的“村庄”和“小村庄”


所以,你最好的选择可能是获得一个数据库。可能会有一些免费的数据库(我想到了Geonames,但我认为它没有邮政编码),但你可能最终不得不购买一个。

YQL可以做这样的事情:

select  name from geo.places.children where parent_woeid in (select woeid from geo.places where text="sunnyvale, usa" limit 1) AND placetype = 11
返回:

{
 "query": {
  "count": 6,
  "created": "2011-03-16T06:49:09Z",
  "lang": "en-US",
  "results": {
   "place": [
    {
     "name": "94086"
    },
    {
     "name": "94087"
    },
    {
     "name": "94088"
    },
    {
     "name": "94089"
    },
    {
     "name": "94090"
    },
    {
     "name": "94085"
    }
   ]
  }
 }
}


关于如何在他们的网站上实现这样的查询,这里有一些例子。

首先,谷歌API上有一个注意事项:要注意,这样你就不会像其他人那样(有时是不知不觉地)走一条浪费的路径。具体来说:“注意:地理编码API只能与谷歌地图一起使用;禁止在地图上不显示地理编码结果。”

如果你的项目不是任务关键型的,你最好的选择是获得一个好的商业级数据库,否则,你可能需要一个好的商业级数据库

此外,请参阅有关此主题的详细信息。

哪个邮政编码?几乎美国每个城市都包含多个邮政编码。