clicksend / integration-library-country-names
此软件包最新版本(v1.0.0)没有可用的许可证信息。
将国家名称转换为ISO双字母代码的实用库。
v1.0.0
2022-02-25 06:45 UTC
Requires
- php: ^7.0|^8.0
- ext-curl: *
- ext-json: *
- ext-mbstring: *
- ext-yaml: *
Requires (Dev)
- phpunit/phpunit: ^9
This package is not auto-updated.
Last update: 2024-09-21 18:03:37 UTC
README
此库是python库 alephdata/countrynames/ 的PHP克隆版。
要求
- PHP
7.0
及以上版本。 - 扩展:intl, yaml, mbstring, json。
在PHP 7.0
、7.2
、7.4
、8.1
上进行了测试。
安装
克隆git仓库
$ git clone https://github.com/ClickSend/integration-library-country-names.git
示例
在你的PHP文件中粘贴以下代码。
确保编辑 integration-library-country-names
目录以匹配你的文件结构。
确保目录 integration-library-country-names/lib/data
可写,用于缓存目的。
<?php require_once 'integration-library-country-names/lib/CountryNames.php'; use CountryNamesLibrary\CountryNames; var_dump('DE' == CountryNames::to_code('Germany')); var_dump('DE' == CountryNames::to_code('Bundesrepublik Deutschland')); var_dump('DE' == CountryNames::to_code('Bundesrepublik Deutschlan', $fuzzy=true)); var_dump('DE' == CountryNames::to_code('DE')); var_dump('DEU' == CountryNames::to_code_3('Germany'));
一切设置完毕!要使用此库作为composer包,请参阅以下内容。
作为Composer包使用
首先克隆仓库到你的项目中的vendor目录,然后运行composer autoload-dump命令
$ git clone https://github.com/ClickSend/integration-library-country-names.git your-project-path/vendor/integration-library-country-names
$ composer autoload-dump
<?php require_once 'vendor/autoload.php'; use CountryNamesLibrary\CountryNames; var_dump('DE' == CountryNames::to_code('Germany')); var_dump('DE' == CountryNames::to_code('Bundesrepublik Deutschland')); var_dump('DE' == CountryNames::to_code('Bundesrepublik Deutschlan', $fuzzy=true)); var_dump('DE' == CountryNames::to_code('DE')); var_dump('DEU' == CountryNames::to_code_3('Germany'));
重新加载数据/删除缓存
如果你更新了data.yaml文件,那么你需要删除缓存以重新加载数据,每次更新都调用此方法一次
CountryNames::_delete_cache();
单元测试
要执行单元测试,请运行以下命令,需要php版本 >= 7.3
composer install
./vendor/bin/phpunit test