A lightweight PHP package that provides country data with powerful lookup functionality. Easily retrieve country details by name, code, domain extension, calling code, currency, and capital, all from a single source of truth.
composer require blakroku/countries
use Blakroku\Countries\Countries\CountryManager;
$manager = new CountryManager();
// Get all countries
$countries = $manager->getAllCountries();
// Get country by name
$kenya = $manager->getCountryByName('Kenya');
// Get country by ISO code
$us = $manager->getCountryByCode('US');
// Get country by domain extension
$country = $manager->getCountryByDomainExtension('.fr');
// Get country by calling code
$country = $manager->getCountryByCallingCode('+49');
// Get country by currency
$country = $manager->getCountryByCurrency('EUR');
// Get country by capital
$country = $manager->getCountryByCapital('Tokyo');
Each lookup method returns a Country object or null if no match is found.
-
Lookup by name, code, domain, currency, capital, and calling code
-
Lazy-loaded from a JSON dataset
-
Fast in-memory caching
-
Clean and modern PHP design
-
No external dependencies
-
PHP 7.4 or higher
-
Composer
Please see CHANGELOG for more information on what has changed recently.
Please see CONTRIBUTING for details.
If you discover any security related issues, please email blakroku@gmail.com instead of using the issue tracker.
The MIT License (MIT). Please see License File for more information.