mysql/php时区问题


mysql/php timezone issues

我试图为mysql条目使用时间戳,但它显示为滞后20小时。

当我在mysql命令行中键入以下内容时,将显示正确的时间(目前是东部时间晚上8:15)

SELECT NOW();

当我使用以下内容将内容提交到我的数据库中时,除了时间显示为凌晨12:15之外,其他一切都是正确的。

date('m/d/Y,h:i:a');

如果重要的话,我表中的列是varchar(20)。

我还试图通过使用来确保它设置为东部时区,但出现了一个错误,说时区不正确。

SET time_zone = 'America/New_York'; 

有人知道为什么我在数据库条目中休息了20个小时,但当我使用mysql命令行查找它正确显示的时间时?

我假设这是一个PHP时区问题。您应该检查您在PHP ini文件中设置的时区。

[Date]
; Defines the default timezone used by the date functions
date.timezone = America/New_York

您也可以在脚本中设置时区:

ini_set('date.timezone', 'America/New_York');

看起来你试图在MySQL中更改时区。您还应该检查您的时区设置MySQL,只是为了确保。