Unix Timestamp Conversion Вернуться к летнему времени

Похоже, у меня случай с понедельника утром !!!

Настроить

Как вы можете, мой локальный компьютер находится в восточном часовом поясе, и действует дневной свет. Это видно из команды «дата» ниже.

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

Затем я сгенерировал метку времени Unix, используя php. Предполагается указать текущее время и преобразовать его в эпоху Unix в UTC 0: 0: 0 1 января 1970 года.

Мой сеанс mysql настроен на UTC, который я представляю 1460992469, поскольку он преобразуется в UTC с помощью mktime.

Эта проблема

Беда в том, что преобразование обратно в 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, но безрезультатно.

0

Решение

Не использовать 'EST', использование 'America/New_York' (при условии, что США).

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector