I18N middleware providing route and country, region and language lists in all languages

Fund package maintenance!

3.0.0 2021-05-01 14:01 UTC

This package is auto-updated.

Last update: 2023-08-29 01:30:08 UTC



This middleware provides list of Languages, Countries and Regions translated to all languages.


PHP 7.4 | 8.0 and any container-interopt compatible project.


composer require los/losi18n

Optionally, copy the config file to your project.

I18n Data

This module needs data from losi18n-data. So you need either to add the module to you project:

Adding the losi18n-data

composer require los/losi18n-data

File format

There are 3 formats: php, json and csv. If you need to import the json file, it's located: vendor/los/losi18n-data/data//languages.json vendor/los/losi18n-data/data//countries.json vendor/los/losi18n-data/data//regions.json


Language list

$languagesService = $sm->get('losi18n-countries');
// All languages translated to pt_BR
$languages = $countriesService->getAllLanguages('pt_BR');
// All languages in their native names
$languages = $countriesService->getNativeLanguages();
// Brazilian Portuguese in English
$language = $countriesService->getLanguage('pt_BR', 'en);

Country list

$countriesService = $sm->get('losi18n-countries');
// All officially assigned countries translated to English
$countries = $countriesService->getAllCountries('en');
// All countries translated to English
$countries = $countriesService->getAllCountries('en', false);
// United States translated to Brazilian Portuguese
$country = $countriesService->getCountry('US','pt_BR');

Region list

$regionsService = $sm->get('losi18n-regions');
$regions = $countriesService->getAllRegions('pt_BR');