LINUX.ORG.RU

[PHP][GMT/UTC] Непонятки

 


0

1

Есть UNIX-время, ну скажем 1292708210. Зима 2010 года, т. е. тогда по Москве ещё было +3.

Делаем:

date_default_timezone_set('Europe/London');
echo date('H:i:s', 1292708210);
> 21:36:50
И это есть оригинальное время по Гринвичу.

Далее делаем так:

date_default_timezone_set('Europe/Moscow');
echo date('H:i:s', 1292708210);
> 00:36:50
Стало быть, то же время, но по Москве.

А потом пробуем так:

date_default_timezone_set('Etc/GMT+3');
echo date('H:i:s', 1292708210);
> 18:36:50
Внезапно. С Москвой сходится только если «+» поменять на "-":

date_default_timezone_set('Etc/GMT-3');
echo date('H:i:s', 1292708210);
> 00:36:50

Где я туплю? Разве GMT+3 не является московским временем?

Ответ на: комментарий от BaBL

Да и Московское теперь UTC/GMT+4, если не ошибаюсь

BaBL ★★★★★
()
Ответ на: комментарий от BaBL

> Все правильно, Etc/GMT+3 - это UTC/GMT-3.

А Etc/GMT+5, скажем - это UTC/GMT-5? Т. е. в моём извращённом понимании темы надо только «+» на "-" всего лишь заменить?

karbofos
() автор топика
Ответ на: комментарий от thesame

> да, это довольно известная «фича», о ней ясно написано в документации

Спасибо.

karbofos
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.