dpovshed / zipus
美国邮政编码静态数据库。
1.1
2018-08-01 20:12 UTC
Requires
- php: >=5.6.3
- illuminate/console: ~5.2
This package is not auto-updated.
Last update: 2024-09-28 19:36:30 UTC
README
这是一个Laravel 5的包,用于通过美国邮政编码轻松简单地进行地理数据的查找。虽然有一些不错的在线查找解决方案,如 http://zippopotam.us,但有时可能更希望所有数据都保存在本地。
该包使用来自 http://federalgovernmentzipcodes.us/ 的数据。实现了一个Artisan命令来自动更新数据。
安装
步骤 1
将此添加到您的 composer.json
{
"require": {
"dpovshed/zipus": "1.*"
}
}
然后按常规安装包。
- Laravel 5.5+ 将自动发现该包。
步骤 2
运行以下命令
php artisan zipus-import
如果一切正常,您将在缓存目录中找到包含数据的JSON数组。
如果您的应用程序处于调试模式,即 APP_DEBUG 在 .env 文件中设置为 true,您可以访问一个URL http://example.com/zipus-test 来检查查找过程。
用法
查找功能作为服务提供,因此使用类似以下结构
$city = app()->make('zipcode')->getCity('10282');
来获取特定邮政编码的城市名称。结果是一个包含城市名称的字符串。要获取所有可用数据,请使用名为 getData() 的函数
$city = app()->make('zipcode')->getData('10282');
您将得到以下结果数组
[ 'ZipCodeType' => string 'STANDARD' (length=8) 'City' => string 'NEW YORK' (length=8) 'State' => string 'NY' (length=2) 'LocationType' => string 'PRIMARY' (length=7) 'Lat' => string '40.71' (length=5) ... ];
数组中的所有元素都将与原始CSV文件中的列名完全相同,来源于 http://federalgovernmentzipcodes.us 。请注意,该包使用了一个数据库,其中特定的邮政编码只能解析为一个主要地址。
如果传入的字符串不是一个有效的美国邮政编码,则使用 getCity() 将返回不变的邮政编码,而使用 getData() 将返回一个空数组。