【问题标题】:PHP date() gives wrong time - CentOS server timePHP date() 给出错误的时间 - CentOS 服务器时间
【发布时间】:2015-01-20 20:29:57
【问题描述】:

CentOS 6.0。我注意到使用此服务器从 ThunderBird 客户端发送的电子邮件是正确的时间和一切。但是当我使用 php 脚本发送电子邮件时,电子邮件的接收时间差为 -7:05h,因此接收方式落后于新电子邮件。 mysql 在使用 ON_UPDATE CUR_TIMESTAMP 插入新行时使用的时间是正确的,但是如果我使用 php 的 date() 函数来获取时间 - 它与 -7:05h 的差异。在 Google 上查找它总是指出错误的时区,但 php.ini 设置为正确的时区(美国/丹佛)。当我将 php.ini 更改为 Europe/London 时,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

【问题讨论】:

  • 服务器日期对吗?
  • date Tue Jan 20 13:30:28 GMT 2015
  • 1 分钟前你评论的不是13:30 GMT,而是20:30 GMT
  • php: Tuesday 20th of January 2015 06:33:59 AM (America/Denver) || date: Tue Jan 20 13:33:46 GMT 2015 || hwclock: Tue 20 Jan 2015 01:38:22 PM GMT -0.515877 seconds 尽快互相请求

标签: php date time centos


【解决方案1】:

您的服务器 timetimezone 不匹配。

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

我会设置正确的 GMT 时间。在2:00 PM Mountain time,您的服务器时钟应为:Tue 20 Jan 2015 21:00:00 PM GMT

【讨论】:

    猜你喜欢
    • 2013-07-22
    • 2012-11-22
    • 1970-01-01
    • 2013-06-04
    • 2013-12-10
    • 1970-01-01
    • 1970-01-01
    • 2018-06-09
    • 2017-11-01
    相关资源
    最近更新 更多