datingvip / php-rest-countries
PHP API client for RestCountries.EU
Requires
- php: ^7.3|^8
- guzzlehttp/guzzle: ^7
Requires (Dev)
- psy/psysh: ^0.7
- symfony/var-dumper: ^3.0
This package is auto-updated.
Last update: 2024-12-14 16:07:53 UTC
README
Get information about countries via a RESTful API
System requirements
- PHP >= 7.3
Installation
Using Composer
composer require datingvip/php-rest-countries
or you can include the following in your composer.json
"datingvip/php-rest-countries": "^1.0.0"
Usage instructions
First, create new RestCountries
instance to make configuring the library for use:
use NNV\RestCountries; $restCountries = new RestCountries;
Once the RestCountries
instance has been registered. You may use it like so:
All
$restCountries->all();
Name
Search by country name. It can be the native name or partial name or full name
$restCountries->byName("viet"); // or with full name $restCountries->byName("vietnam", true);
Code(s)
Search by ISO 3166-1 2-letter or 3-letter country code(s)
// Single country code $restCountries->byCodes("vn"); // Multiple country codes $restCountries->byCodes(["vn", "cn", "th"]);
Currency
Search by ISO 4217 currency code
$restCountries->byCurrency("vnd");
Language
Search by ISO 639-1 language code.
$restCountries->byLanguage("vi");
Capital city
Search by capital city
$restCountries->byCapitalCity("hanoi");
Calling code
Search by calling code
$restCountries->byCallingCode("84");
Region
Search by region: Africa, Americas, Asia, Europe, Oceania
$restCountries->byRegion("asia");
Regional bloc
Search by regional bloc:
- EU (European Union)
- EFTA (European Free Trade Association)
- CARICOM (Caribbean Community)
- PA (Pacific Alliance)
- AU (African Union)
- USAN (Union of South American Nations)
- EEU (Eurasian Economic Union)
- AL (Arab League)
- ASEAN (Association of Southeast Asian Nations)
- CAIS (Central American Integration System)
- CEFTA (Central European Free Trade Agreement)
- NAFTA (North American Free Trade Agreement)
- SAARC (South Asian Association for Regional Cooperation)
$restCountries->byRegionalBloc("asean");
Filter response
You can filter the output of your request to include only the specified fields.
// You can use `fields([])` with any available methods $restCountries->fields(["name", "callingCodes", "capital"])->all(); $restCountries->fields(["name"])->byName("vietnam", true); $restCountries->fields(["callingCodes"])->byRegionalBloc("asean");