php countries adalah perpustakaan yang menyediakan sintaks elegan untuk data negara.
Anda dapat menginstall php countries melalui Composer, sebagai berikut.
composer require divineomega/php-countries
Untuk menggunakan php countries , Anda harus membuat objek Countries
baru.
use DivineOmega Countries Countries ;
$ countries = new Countries ;
Anda kemudian dapat memanggil berbagai metode pada objek ini, untuk mendapatkan data negara.
Anda dapat dengan mudah mengambil array dari semua negara dan melakukan iterasi melalui negara-negara tersebut, sebagai berikut.
foreach ( $ countries -> all () as $ country ) {
var_dump ( $ country -> name . ' - ' . $ country -> officialName );
}
Detail negara dapat diambil dari nama resmi atau nama umum negara tersebut.
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"
}
*/
Anda bisa mendapatkan data suatu negara dengan kode ISO 3166-1-nya. Variasi 2 karakter, 3 karakter, dan numerik semuanya diterima.
var_dump ( $ countries -> getByIsoCode ( ' USA ' ));
/*
object(DivineOmegaCountriesCountry)#4693 (16) {
["name"]=>
string(13) "United States"
["officialName"]=>
string(24) "United States of America"
// etc...
}
*/
Menyediakan bahasa, akan mengembalikan serangkaian negara tempat bahasa tersebut digunakan. Anda dapat memberikan nama atau kode bahasa.
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...
}
}
*/