我有一个Web应用程序,通常以法语显示任何日期的月份。在Ubuntu重新启动后以英文显示月份
即使当我重新启动NginX服务器和php-fpm服务器时,日期也会以法语显示。
但今天我做了Ubuntu的12机的重启,现在的Web应用程序的所有日期的月份,显示在英语Jun 2, 2017 5:11:27 PM
或02/06/2017 17:03
如果我在date
命令外壳I型获取日期在法国,虽然vendredi 2 juin 2017, 23:47:59 (UTC+0200)
以下是有关安装的语言环境的详细信息:
/var/www$ sudo locale -a
C
C.UTF-8
en_US.utf8
fr_BE.utf8
fr_CA.utf8
fr_CH.utf8
fr_FR.utf8
fr_LU.utf8
POSIX
[email protected]:/var/www$ sudo locale
LANG=fr_FR.UTF-8
LANGUAGE=
LC_CTYPE="fr_FR.UTF-8"
LC_NUMERIC=fr_FR.UTF-8
LC_TIME=fr_FR.UTF-8
LC_COLLATE="fr_FR.UTF-8"
LC_MONETARY=fr_FR.UTF-8
LC_MESSAGES="fr_FR.UTF-8"
LC_PAPER=fr_FR.UTF-8
LC_NAME=fr_FR.UTF-8
LC_ADDRESS=fr_FR.UTF-8
LC_TELEPHONE=fr_FR.UTF-8
LC_MEASUREMENT=fr_FR.UTF-8
LC_IDENTIFICATION=fr_FR.UTF-8
LC_ALL=
sudo locale-gen fr_FR.UTF-8
Generating locales...
fr_FR.UTF-8... up-to-date
Generation complete.
sudo update-locale
我也重新启动nginx的,但它并没有帮助。
下面是从phpinfo()函数调用一些输出:
iconv.input_encoding ISO-8859-1 ISO-8859-1
iconv.internal_encoding ISO-8859-1 ISO-8859-1
iconv.output_encoding ISO-8859-1 ISO-8859-1
version 1.1.0
ICU version
intl.default_locale no value no value
日期6/3/17 4:47 PM
的例子(它应该切换到17年3月6日)和她的PHP代码:
$date = \DateTime::createFromFormat('Y-m-d H:i:s', $action['date_reminder']);
$this->dateFormat($date, IntlDateFormatter::SHORT, IntlDateFormatter::SHORT)
IntlDateFormatter
来自Start of intl v.PECL-3.0.0
。
提醒:只有在机器重新启动后才会显示问题。
我的应用程序并没有因为机器重启改变。它已经有了所有的语言环境配置。机器重新启动后弹出问题。 – Stephane
你能提供你的'phpinfo'和一段输出英文日期的代码吗 –