php countries ist eine Bibliothek, die eine elegante Syntax für Länderdaten bereitstellt.
Sie können php countries wie folgt über Composer installieren.
composer require divineomega/php-countries
Um php countries zu verwenden, müssen Sie ein neues Countries
erstellen.
use DivineOmega Countries Countries ;
$ countries = new Countries ;
Anschließend können Sie für dieses Objekt verschiedene Methoden aufrufen, um Länderdaten abzurufen.
Sie können wie folgt ganz einfach ein Array aller Länder abrufen und diese durchlaufen.
foreach ( $ countries -> all () as $ country ) {
var_dump ( $ country -> name . ' - ' . $ country -> officialName );
}
Länderdetails können aus dem offiziellen oder gebräuchlichen Namen des Landes abgerufen werden.
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"
}
*/
Sie können die Daten für ein Land anhand seines ISO 3166-1-Codes abrufen. Die 2-stelligen, 3-stelligen und numerischen Varianten werden alle akzeptiert.
var_dump ( $ countries -> getByIsoCode ( ' USA ' ));
/*
object(DivineOmegaCountriesCountry)#4693 (16) {
["name"]=>
string(13) "United States"
["officialName"]=>
string(24) "United States of America"
// etc...
}
*/
Wenn Sie eine Sprache angeben, wird ein Array aller Länder zurückgegeben, in denen diese Sprache gesprochen wird. Sie können einen Sprachnamen oder einen Code angeben.
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...
}
}
*/