这是我的测试文件的完整内容:
<?php
setlocale(LC_ALL, 'de_DE');
echo date('F'); // => "February" (wrong)
echo strftime('%B'); // => "Februar" (correct)
?>
为什么会发生这种情况的任何想法?我已在shell中使用de_DE
验证已安装locale -a
语言环境。
答案 0 :(得分:2)
来自the manual:
要使用其他语言格式化日期,您应该使用setlocale()和strftime()函数而不是date()。
所以你所看到的是预期的行为。使用strftime()
表示区域设置格式的日期,date()
表示不需要的日期。