adamhebby / php-countries
PHP Countries is a library that provides an elegant syntax to country data.
Requires
- php: ^8.1
Requires (Dev)
- phpunit/phpunit: ^9.5
- satooshi/php-coveralls: ^1.0
This package is auto-updated.
Last update: 2024-10-30 02:16:19 UTC
README
PHP Countries is a library that provides an elegant syntax to country data.
FORKED
Forked from rapidwebltd/php-countries and upgraded to PHP 8.1, including readonly properties and newer country data.
Installation
You can install PHP Countries via Composer, as follows.
composer require adamhebby/php-countries
Usage
To use PHP Countries, you must create a new Countries
object.
use RapidWeb\Countries\Countries; $countries = new Countries;
You can then call various methods on this object, to get country data.
Retrieving all countries
You can easily retrieve an array of all countries and iterate through them, as follows.
foreach($countries->all() as $country) { var_dump($country->name.' - '.$country->officialName); }
Retrieving country by name
Country details can be retrieved from the country's official or common name.
var_dump($countries->getByName('United Kingdom')); /* object(RapidWeb\Countries\Country)#456 (16) { ["name"]=> string(14) "United Kingdom" ["officialName"]=> string(52) "United Kingdom of Great Britain and Northern Ireland" ["topLevelDomains"]=> array(1) { [0]=> string(3) ".uk" } ["isoCodeAlpha2"]=> string(2) "GB" ["isoCodeAlpha3"]=> string(3) "GBR" ["isoCodeNumeric"]=> string(3) "826" ["languages"]=> array(1) { [0]=> string(7) "English" } ["languageCodes"]=> array(1) { [0]=> string(3) "eng" } ["currencyCodes"]=> array(1) { [0]=> string(3) "GBP" } ["callingCodes"]=> array(1) { [0]=> string(3) "+44" } ["capital"]=> string(6) "London" ["region"]=> string(6) "Europe" ["subregion"]=> string(15) "Northern Europe" ["latitude"]=> float(54) ["longitude"]=> float(-2) ["areaInKilometres"]=> float(242900) } */
Retrieving country by ISO 3166-1 code
You can get the data for a country by its ISO 3166-1 code. The 2 character, 3 character and numeric variations are all accepted.
var_dump($countries->getByIsoCode('USA')); /* object(RapidWeb\Countries\Country)#4693 (16) { ["name"]=> string(13) "United States" ["officialName"]=> string(24) "United States of America" // etc... } */
Retrieving country by language spoken
Providing a language, will return an array of all countries in which that language is spoken. You can provide a language name or code.
var_dump($countries->getByLanguage('German')); /* array(5) { [0]=> object(RapidWeb\Countries\Country)#4913 (16) { ["name"]=> string(7) "Belgium" ["officialName"]=> // etc... } [1]=> object(RapidWeb\Countries\Country)#4883 (16) { ["name"]=> string(7) "Germany" ["officialName"]=> string(27) "Federal Republic of Germany" // etc... } [2]=> object(RapidWeb\Countries\Country)#4826 (16) { ["name"]=> string(13) "Liechtenstein" ["officialName"]=> string(29) "Principality of Liechtenstein" // etc... } [3]=> object(RapidWeb\Countries\Country)#4808 (16) { ["name"]=> string(10) "Luxembourg" ["officialName"]=> string(25) "Grand Duchy of Luxembourg" // etc... } [4]=> object(RapidWeb\Countries\Country)#4871 (16) { ["name"]=> string(7) "Namibia" ["officialName"]=> string(19) "Republic of Namibia" // etc... } } */