Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/240.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP:为什么我的日期在服务器上的格式不同?_Php_Datetime - Fatal编程技术网

PHP:为什么我的日期在服务器上的格式不同?

PHP:为什么我的日期在服务器上的格式不同?,php,datetime,Php,Datetime,通过以下源代码,我在dev(本地maxOSX)和live(debian)上获得了不同的输出: 本地(当天的正确格式):执行01.03。20:00 实时服务器(不正确-我需要德语工作日输出):Thu 01.03。20:00 有人能告诉我为什么会发生这种情况吗?尝试使用日期\u默认\u时区\u设置或尝试使用LC\u ALL在两台机器上尝试以下操作 $loc_de = setlocale(LC_ALL, 'de_DE@euro', 'de_DE', 'de', 'ge'); echo "Preferr

通过以下源代码,我在dev(本地maxOSX)和live(debian)上获得了不同的输出:

本地(当天的正确格式):执行01.03。20:00

实时服务器(不正确-我需要德语工作日输出):Thu 01.03。20:00


有人能告诉我为什么会发生这种情况吗?

尝试使用日期\u默认\u时区\u设置或尝试使用LC\u ALL

在两台机器上尝试以下操作

$loc_de = setlocale(LC_ALL, 'de_DE@euro', 'de_DE', 'de', 'ge');
echo "Preferred locale for german on this system is '$loc_de'";

我原以为这对我有用(这就是为什么我在这里写这个答案),但后来我意识到这在开发(OSX)机器上不起作用了。(所以我刚刚编辑了这个答案) 无论如何,您都可以尝试:

1.)在实时服务器上安装区域设置(以root用户身份):

2.)改变:

setlocale(LC_TIME, 'de_DE')

这对我不起作用的原因似乎是在OSX上区域设置被调用
“de_de.utf-8”,而在debian机器上称为“de_de.UTF8”。

它是否与
LC_ALL
一起工作?检查debian机器上是否安装了德语包。不要忘记字符集:setlocale(LC_TIME,'de_de.UTF8')@哎哟,现在行为颠倒了!在实时系统上,日期的格式正确;在开发系统上,日期以EN格式输出工作日。它已经在我的开发系统上运行-所以实际上不需要在我的开发系统上安装任何东西。。。有什么想法吗?@Jleagle没有,这不会改变任何东西。包含.UTF8的语法适用于debian机器。我不确定OSX是否支持它。在您的开发机器上尝试不使用。
aptitude install debconf
dpkg-reconfigure locales
setlocale(LC_TIME, 'de_DE')
setlocale(LC_TIME, 'de_DE.UTF8')