В большинстве случаев в конфигурации указывается:
Код: Выделить всё
'language' => 'ru-RU', // пользовательский язык русский
'sourceLanguage' => 'en-US', // по умолчанию
Код: Выделить всё
echo \Yii::t('app',
'На диване {n, plural, =0{нет кошек} =1{лежит одна кошка} one{лежит # кошка} few{лежит # кошки} many{лежит # кошек} other{лежит # кошки}}!',
['n' => 17],
);
В документации упоминается что:
На сколько я понял из перевода: правила склонения будут применены только если sourceLanguage и language совпадают. И действительно, если указать оба параметра "ru-RU", это срабатывает: 17 кошекNote: The above example Russian message is mainly used as a translated message, not an original message, unless you set the source language of your application as ru-RU and translating from Russian.
When a translation is not found for an original message specified in Yii::t() call, the plural rules for the source language will be applied to the original message.
Вопрос, насколько правильно задавать так, а если я хочу в одном шаблоне на разных языках вывести? Можно как-то по параметру $language в функции Yii::t передать?
Спасибо