我有插入一个日期到表一些PHP代码的随机时间偏移:PHP time()函数返回一个小时
INSERT INTO tblEventLog VALUES ... date("Y-m-d H:i:s",time()) ...
这样做的结果通常是正确的,但是偶尔日期是一个小时后面:
315070 05-Sep-10 18:08
315069 05-Sep-10 18:07
315068 05-Sep-10 18:07
315067 05-Sep-10 18:06
315066 05-Sep-10 18:06
315065 05-Sep-10 17:04
315064 05-Sep-10 18:01
什么可能导致这种情况?只有一台服务器。
编辑:
使用NOW()工作!
问题是,其中一个PHP页面正在更改时区(创建RSS提要时),PHP time()函数正在提取它。使用数据库来设置时间固定的东西。
如果你忽略'time()'而只是说'date(“Y-m-d H:i:s”)'? – BoltClock 2010-09-05 18:03:01
您的所有请求是否都来自同一时区? – fredley 2010-09-05 18:03:13
@fredley:时区由运行PHP的服务器决定,而不是由请求决定。在这种情况下,只有一个服务器,所以我的猜测只涉及一个时区。 – BoltClock 2010-09-05 18:06:07