Yii2 格式化程序区域设置不起作用

Yii2 formatter locale not working

我在使用 yii2 日期格式化程序时遇到问题,它没有使用我设置的语言环境。全局语言设置为de-DE,似乎除了date formatter外其他地方都生效了。我试过像这样在配置文件中设置格式化程序语言环境:

 'formatter' => [
        'dateFormat' => 'dd.MM.yyyy',            
        'decimalSeparator' => ',',
        'thousandSeparator' => ' ',
        'currencyCode' => 'EUR',
        'locale'=>'de_DE'
   ],

以及直接在代码中使用格式化程序之前:

Yii::$app->formatter->locale = 'de-DE';
echo Yii::$app->formatter->asDatetime('2014-01-01'); 

但它将日期格式设置为 2014 年 1 月 1 日 10:04:36 上午。 有什么想法吗?

参数dateFormat只对asDate()有效。对于 asDatetime() 设置 datetimeFormat.

可能原因: 检查并确保安装了 php-intl 扩展。

参见:https://www.yiiframework.com/doc/guide/2.0/en/tutorial-i18n#parameter-formatting