在我们的开发服务器上生成所需的语言环境并使用setlocale
为 PHP 提供语言环境以使用格式化的日期后,strftime
将显示完全翻译,正如预期的那样。
然而,在重新加载页面后,日期显示在服务器的默认语言环境中:en_US
. 多次重新加载页面导致翻译日期的可能性几乎为 50/50。奇怪的。这里发生了什么?
似乎Apache和Nginx网络服务器都需要在生成语言环境后重新启动,以便能够毫无问题地使用它们。
使用service apache2 restart
或service nginx restart
解决问题。在某些情况下,整个服务器可能需要重新启动才能解决问题。
感谢Helmut Strasser 的博客文章,我们能够确定问题所在。