PHP脚本来解析地址?

问题描述 投票:0回答:3

我正在寻找一个PHP脚本来解析名称和地址字段,人们将其附加到电子邮件末尾。它会以纯文本格式上载,并采用以下格式:

John Q. Public
Director of Some Thing
123 Elm Street 
Anytown, ST 11001
(000) 555-1212
(000) 555-1213 FAX

这些地址的格式往往不同,这就是为什么我想知道是否有人接受过这种地址。谢谢。

php street-address
3个回答
2
投票

因为地址可能有很大的不同,所以这不是简单的解析任务。如果可能的话,我建议使用经过验证的服务,例如The Google Geocoding API

您可以使用PHP的file_get_contents()检索答案,并使用json_decode()读取答案(JSON是Geocoding API可以返回的几种格式之一。


1
投票

SmartyStreets提供了一种提取工具来执行此类操作。您可以粘贴任何文本块,它会被抓取以提取其中可能存在的任何地址。 SmartyStreets专门从事地址验证,因此我们的开发人员已经解决了解析问题。您可以签出here。提取程序是一个Web工具,但是您可以使用PHP以编程方式使用它。它至少需要免费订阅。

下面是您从上述虚假电子邮件签名中找到的内容:

<< img src =“ https://image.soinside.com/eyJ1cmwiOiAiaHR0cHM6Ly9pLnN0YWNrLmltZ3VyLmNvbS8zeVFkMS5wbmcifQ==” alt =“来自电子邮件签名的提取器结果”>

(请注意,我在SmartyStreets工作。)


0
投票

[Google地理编码每天限制为2500。

如果您要解析大量数据,建议使用其他服务。

可以返回与Google类似的格式化地址的cheapest geocoding apiGeocode Farm。他们也有jSON,因此您仍然可以将file_get_contents与json_decode()一起使用。我建议您使用他们的25,000 /天($ 25 / mo)并通过解析将其解析(如果您有大量数据)。如果不止如此,请升级到其他计划。如果您仅需要2500,但将来还会需要​​更多,我建议您仍然使用它们,因为它们也免费提供2,500,您可以立即将计划升级为在其仪表板中付费的计划。

  • 有点偏爱使用GeocodeFarm,因为我发现他们的服务是唯一比Google更好的服务,价格便宜,而且即使在大多数情况下都不会返回接近相同的结果。从来没有停机和爱他们。我将GeocodeFarm用于所有的地理编码和地址解析。

下载站点:他们没有提供Google所提供的地址组件,而是仅提供了返回/更正的地址...://希望他们将来能添加地址组件。我发现的唯一的东西丢失了。 :(

P.S。要么是Google他们,要么是我将他们的网站链接到上方的“地理编码农场”一词...

P.S.S。对不起,我很晚才回复,但是希望这会帮助寻找此内容的其他人...

© www.soinside.com 2019 - 2024. All rights reserved.