邮政编码-PHP-邮政编码检查如果它';s已涵盖


postal code - PHP - Postcode check if it's covered

我目前正在为一家电气公司开发一个网站。他们想在那里查一下邮政编码。它会以某种方式工作:

  1. 用户输入邮政编码
  2. 看看我们是否能覆盖它
  3. 显示结果

但我以前从未使用过邮政编码。我该如何检查他们是否覆盖。我显然需要一些数据库,列出他们覆盖的邮政编码或地区。但是我该如何检查邮政编码是否有效呢。

邮政编码查找显然是为了查看电气公司是否覆盖了用户的区域。

提前谢谢。

我认为与其使用数据库来搜索结果,不如查看地理位置,并使用第三方为您计算所有内容。

谷歌和索尼都提供地理定位平台

  • 索尼拥有:http://www.placeengine.com/en
  • 谷歌拥有:http://code.google.com/apis/maps/documentation/distancematrix/

我显然需要一些数据库,列出他们覆盖的邮政编码或地区。

是的。然后做一个简单的查找。

但是我该如何检查邮政编码是否有效呢。

你必须有一个数据库列出所有可能的邮政编码,并进行类似的检查。

我不知道你在哪个国家,但在大多数国家,没有程序化的方法来确定邮政编码是否包含在服务中
此外,如果不咨询包含覆盖范围的数据库,就无法知道它是否有效。

有一些带有邮政编码的数据库,这里是一个荷兰数据库:http://www.postcode.nl/index/269/1/0/overzicht-producten-en-diensten.html

您可以使用正则表达式验证邮政编码。

电气公司肯定会给你一份他们涵盖的邮政编码列表吗?然后是一个简单的字符串匹配。。。。

我想你对英国感兴趣。要查看邮政编码是否有效,请从操作系统获取免费的CodePoint开放数据集:http://www.ordnancesurvey.co.uk/oswebsite/products/code-point-open/

您可以将其拉入DG并交叉检查用户输入。请记住,这些数据是基于皇家邮政PAF的,所以不要认为它是100%准确的。在代码中构建一点灵活性/容错性。

如果客户想要覆盖特定的半径,您也可以使用操作系统数据进行距离计算。。。这一切都是免费的,就像在自由和免费啤酒中一样:-)

作为第一步,您可以检查邮政编码是否为有效格式:http://en.wikipedia.org/wiki/Postcodes_in_the_United_Kingdom#Validation-此检查将为您预过滤输入。