php日期奇怪的行为

时间:2017-10-10 15:34:22

标签: php date

我有这段代码

$daytime=date("D M j G:i:s T Y");

任何人都可以解释为什么在某些服务器中值T会返回类似这样的内容

Tue Oct 10 12:30:50 -03 2017

在另一个服务器中,值T返回类似这样的内容

Tue Oct 10 12:30:50 CDT 2017

如何始终显示CDT值而不是数值-03?

谢谢

2 个答案:

答案 0 :(得分:1)

date_default_timezone_get()的结果转储到两台服务器上并查看差异。它取决于您的服务器设置为哪个时区标识符。使用 T 修饰符时,某些时区标识符将显示为 + xx -xx ,而标识符将缩写。

如果要在应用程序中强制使用特定时区而不更改服务器配置,可以使用date_default_timezone_set()进行设置。

答案 1 :(得分:1)

tzdata已经停止使用"发明缩写",我在这里找到了这个信息

https://unix.stackexchange.com/questions/397377/strange-time-zone-abbreviation/397476#397476

这是数字时区缩写的原因。