tiny-blocks / country
使用 ISO-3166 规范表示国家的值对象。
2.0.1
2023-06-17 15:19 UTC
Requires
- php: ^8.1||^8.2
- tiny-blocks/value-object: ^2.0
Requires (Dev)
- infection/infection: ^0.26
- phpmd/phpmd: ^2.13
- phpunit/phpunit: ^9.6
- squizlabs/php_codesniffer: ^3.7
README
概述
使用 ISO-3166 规范表示国家的值对象。
安装
composer require tiny-blocks/country
如何使用
该库根据 ISO-3166 规范公开国家代码。此外,还可以创建一个表示国家的实例,该实例将代码和名称分组。
Alpha2Code
Alpha-2 代码:表示国家名称的两个字母代码,建议用作通用代码。
$alpha2Code = Alpha2Code::UNITED_STATES_OF_AMERICA; $alpha2Code->name; # UNITED_STATES_OF_AMERICA $alpha2Code->value; # US $alpha2Code->toAlpha3()->value; # USA
Alpha3Code
Alpha-3 代码:表示国家名称的三个字母代码,通常与国家名称更为紧密相关。
$alpha3Code = Alpha3Code::UNITED_STATES_OF_AMERICA; $alpha3Code->name; # UNITED_STATES_OF_AMERICA $alpha3Code->value; # USA $alpha3Code->toAlpha2()->value; # US
国家
国家可能会更改其名称的很大一部分,因此没有针对这种情况的特定 ISO。
您可以使用 from
方法创建一个 Country
实例,并告知一个字母代码(Alpha2Code
或 Alpha3Code
),它们可以是 AlphaCode
类型或仅仅是字符串。可选地,您可以输入国家名称。如果未在 from
方法中给出国家名称,则默认假设为英文版本的国家名称。
$country = Country::from(alphaCode: Alpha2Code::UNITED_STATES_OF_AMERICA); $country->name; # United States of America $country->alpha2->value; # US $country->alpha3->value; # USA
或
$country = Country::from(alphaCode: 'US'); $country->name; # United States of America $country->alpha2->value; # US $country->alpha3->value; # USA
通过传递国家名称创建实例。
$country = Country::from(alphaCode: Alpha3Code::UNITED_STATES_OF_AMERICA, name: 'United States'); $country->name; # United States $country->alpha2->value; # US $country->alpha3->value; # USA
许可证
Country 采用 MIT 许可。
贡献
请遵循 贡献指南 以向项目做出贡献。