PHP date() 给出了错误的时间 - CentOS 服务器时间


PHP date() gives wrong time - CentOS server time

CentOS 6.0.我注意到使用此服务器的 ThunderBird 客户端发送的电子邮件在正确的时间和所有内容下都没问题。但是当我使用 php 脚本发送电子邮件时,收到的电子邮件有 -7:05h 的差异,因此接收时间远远落后于新电子邮件。mysql 在插入带有 ON_UPDATE CUR_TIMESTAMP 的新行时使用的时间是正确的,但是如果我使用 php 的 date() 函数来获取时间 - 它与 -7:05h 的差异。在谷歌上查找它总是指出错误的时区,但php.ini设置为正确的时区(美国/丹佛)。当我将 php.ini 更改为欧洲/伦敦时,date() 函数打印正确的时间,但电子邮件仍然有时差。

**hwclock**
Tue 20 Jan 2015 01:22:37 PM GMT  -0.828380 seconds
**echo date('l jS 'of F Y h:i:s A');**
Tuesday 20th of January 2015 06:07:35 AM

您的服务器timetimezone不匹配。

您显示的服务器时间是山区时间(美国/丹佛),但时区是格林威治标准时间。 格林威治标准时间 目前比山 快 7 小时。 因此,将服务器时间设置为当前 GMT 时间并保留 GMT 时区,或者将山地时间设置为山地时间(美国/丹佛)。

我会设置适当的格林威治标准时间。在2:00 PM Mountain time,您的服务器时钟应为:Tue 20 Jan 2015 21:00:00 PM GMT