它在本地服务器上正常工作,但是当我将其上传到共享主机时,而不是显示相对日期,它显示了RAW String。
代码:
Yii::$app->formatter->asRelativeTime($timestamp, 'now');
本地主机:
in 6 days
共享主机:
in {delta, plural, =1{a day} other{# days}}
设置环境,并通过时间戳。INTL扩展已启用。其他格式化功能(即阿斯达特)正常工作。
我想这是因为PHP INTL扩展的过时的ICU库。我的是4.2.1,而YII2至少需要ICU版本49才能使用所有功能,其中可能包括AsrelativEtime()。
。无法确定,因为我无法在托管计划中进行更新。
in 6 days
是局部字符串(英语)。
in {delta, plural, =1{a day} other{# days}}
是未定位的模板。
每个请求时,yii试图本地化模板。如果YII由于某种原因无法本地化模板本地化,它将输出模板。
因此,可能缺少本地化文件:检查vendor/yiisoft/yii2/messages
是否包含您的语言的文件夹和文件。并检查当前本地化是否设置为有效值。
还阅读有关yii2的国际化。