php countries es una biblioteca que proporciona una sintaxis elegante para los datos de los países.
Puede instalar php countries a través de Composer, de la siguiente manera.
composer require divineomega/php-countries
Para utilizar php countries , debe crear un nuevo objeto Countries
.
use DivineOmega Countries Countries ;
$ countries = new Countries ;
Luego puede llamar a varios métodos en este objeto para obtener datos del país.
Puede recuperar fácilmente una serie de todos los países y recorrerlos en iteración, de la siguiente manera.
foreach ( $ countries -> all () as $ country ) {
var_dump ( $ country -> name . ' - ' . $ country -> officialName );
}
Los detalles del país se pueden recuperar a partir del nombre oficial o común del país.
var_dump ( $ countries -> getByName ( ' United Kingdom ' ));
/*
object(DivineOmegaCountriesCountry)#146 (17) {
["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(2) "44"
}
["capital"]=>
string(6) "London"
["capitals"]=>
array(1) {
[0]=>
string(6) "London"
}
["region"]=>
string(6) "Europe"
["subregion"]=>
string(15) "Northern Europe"
["latitude"]=>
int(54)
["longitude"]=>
int(-2)
["areaInKilometres"]=>
int(242900)
["nationality"]=>
string(7) "British"
}
*/
Puede obtener los datos de un país mediante su código ISO 3166-1. Se aceptan variaciones de 2 caracteres, 3 caracteres y numéricas.
var_dump ( $ countries -> getByIsoCode ( ' USA ' ));
/*
object(DivineOmegaCountriesCountry)#4693 (16) {
["name"]=>
string(13) "United States"
["officialName"]=>
string(24) "United States of America"
// etc...
}
*/
Al proporcionar un idioma, se devolverá una serie de todos los países en los que se habla ese idioma. Puede proporcionar un nombre o código de idioma.
var_dump ( $ countries -> getByLanguage ( ' German ' ));
/*
array(5) {
[0]=>
object(DivineOmegaCountriesCountry)#4913 (16) {
["name"]=>
string(7) "Belgium"
["officialName"]=>
// etc...
}
[1]=>
object(DivineOmegaCountriesCountry)#4883 (16) {
["name"]=>
string(7) "Germany"
["officialName"]=>
string(27) "Federal Republic of Germany"
// etc...
}
[2]=>
object(DivineOmegaCountriesCountry)#4826 (16) {
["name"]=>
string(13) "Liechtenstein"
["officialName"]=>
string(29) "Principality of Liechtenstein"
// etc...
}
[3]=>
object(DivineOmegaCountriesCountry)#4808 (16) {
["name"]=>
string(10) "Luxembourg"
["officialName"]=>
string(25) "Grand Duchy of Luxembourg"
// etc...
}
[4]=>
object(DivineOmegaCountriesCountry)#4871 (16) {
["name"]=>
string(7) "Namibia"
["officialName"]=>
string(19) "Republic of Namibia"
// etc...
}
}
*/