Unix时间戳转换回夏令时

时间:2016-04-18 15:26:16

标签: php mysql time timezone dst

看起来我周一早上有一个案例!!!

设置

因为您可以在我的本地机器处于东部时区,并且日光节约已生效。这可以从' date'命令如下。

date ; php -r 'echo mktime() .PHP_EOL ;'
Mon Apr 18 11:14:29 EDT 2016
1460992469

然后我使用php生成了一个unix时间戳。假设您将当前时间转换为1970年1月1日UTC 0:0:0的Unix纪元。

我的mysql Session设置为UTC,我想1460992469代表它是由mktime转换为UTC。

问题

问题是转换回est无法识别夏令时。任何人都可以帮我指出我的逻辑中的缺陷。

SELECT CONVERT_TZ(FROM_UNIXTIME(1460992469), @@session.time_zone ,'EST') as converted_to_est , FROM_UNIXTIME(1460992469) , @@session.time_zone;
+---------------------+---------------------------+---------------------+
| converted_to_est    | FROM_UNIXTIME(1460992469) | @@session.time_zone |
+---------------------+---------------------------+---------------------+
| 2016-04-18 10:14:29 | 2016-04-18 15:14:29       | UTC                 |
+---------------------+---------------------------+---------------------+

我尝试使用' EDT'在CONVERT_TZ中已无效。

1 个答案:

答案 0 :(得分:1)

不要使用WebDriverWait。使用'EST'(假设美国)。