我正在尝试让PHP日期用于跨语言.将根据登录用户的语言设置提供语言代码.
我以为我能做到这一点:
setlocale(LC_ALL, 'de_DE.UTF-8');
echo strftime('%A %B %Y');
但输出是:
Wednesday April 2011
虽然我原以为:
Mittwoch April 2011
(四月与英语和德语相同)
这不是使用strftime函数的正确方法吗?如果没有,是否有替代方法?
最佳答案:
setlocale()返回一个值,该值可以为FALSE:
Returns the new current locale, or
FALSE if the locale functionality is
not implemented on your platform, the
specified locale does not exist or the
category name is invalid.
所以你需要检查返回值.
请注意,区域设置名称因平台而异,de_DE.UTF-8看起来像典型的Unix名称.它是Unix服务器吗?如果是这样,请确保计算机实际安装了此类语言环境.
标签:php,date,internationalization
来源: https://codeday.me/bug/20190515/1109248.html