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
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
->fallbackLocale()
->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.