Yii2格式化语言

Yii2 formatter language

这是我的配置:

'formatter' => [
            'class' => 'yii\i18n\Formatter',
            'dateFormat' => 'd MMMM Y',
            'locale' => 'ru-RU'

      ],

当我尝试这个时:

echo Yii::$app->formatter->asDate('2014-01-01');

我得到:

01 Jan 2014

但我想要同样的俄语版本。

已解决:

通过 OpenServer 打开文件 php.ini 并取消注释 ;extension=php_intl.dll

您指定的配置应该输出 01 янв. 2014
您很可能缺少 php-intl 扩展

如果格式化程序设置为 'dateFormat' => 'php:d M Y',您只能得到 2014 年 1 月 1 日,因为 PHP 的日期 M 代表

A short textual representation of a month, three letters: Jan through Dec

如果您希望根据您的语言将日期格式化为国际格式,您需要使用 ICU 设置格式化程序:

'dateFormat' => 'd MMM Y'

ICU User Guide 所述。