Yii Internationalization Library

1.2.1 2023-06-10 14:18 UTC

This package is auto-updated.

Last update: 2024-05-18 15:14:47 UTC



Yii Internationalization Library

Latest Stable Version Total Downloads Build status Scrutinizer Code Quality Code Coverage Mutation testing badge static analysis type-coverage

The package provides common internationalization utilities:

  • Locale stores locale information created from BCP 47 formatted string. It can parse locale string, modify locale parts, form locale string from parts, and derive fallback locale.
  • LocaleProvider is a stateful service that stores current locale.


  • PHP 8.0 or higher.


The package could be installed with Composer:

composer install yiisoft/i18n

General usage

Use Locale as follows:

$locale = new \Yiisoft\I18n\Locale('es-CL');
echo $locale->language(); // es
echo $locale->region(); // CL

$locale = $locale->withLanguage('en');
echo $locale->asString(); // en-CL

echo $locale
    ->asString(); // en

Use LocaleProvider as follows:

use \Yiisoft\I18n\LocaleProvider;

final class MyService
    public function __construct(
        private LocaleProvider $localeProvider
    ) {    
    public function doIt(): void
        $locale = $this->localeProvider->get();
        if ($this->localeProvider->isDefaultLocale()) {
            // ...
        // ...        


If you need help or have a question, the Yii Forum is a good place for that. You may also check out other Yii Community Resources.


The Yii Internationalization Library is free software. It is released under the terms of the BSD License. Please see LICENSE for more information.

Maintained by Yii Software.

Support the project

Open Collective

Follow updates

Official website Twitter Telegram Facebook Slack