time () возвращает правильное значение, но date ('O') - неверный часовой пояс - PullRequest
1 голос
/ 05 ноября 2011

Проблема появилась после того, как Россия начала жить по Гринвичу + 4.

Время сервера моего хостера - Европа / Москва.

Когда я печатаю из даты PHP ('d / m / YH: i '), он возвращает правильное московское время.

Но когда я пытаюсь получить разницу с гринвичским временем (GMT) в часах с помощью даты (' O '), я получаю +0300 (должно быть+0400, я думаю. Посмотрите здесь: http://localtimes.info/Europe/Russia/Moscow/Moscow/ - Текущее смещение часового пояса: +04: 00 часов ).

Вопрос: почему?Это я что-то делаю неправильно или это проблема хостера?

1 Ответ

1 голос
/ 05 ноября 2011

Правильное смещение UTC для по московскому времени равно UTC +0400:

В 2011 году российское правительство объявило, что переход на летнее время будет наблюдаться в будущем круглый год, что фактически сместит стандартное время - действие, которое, по утверждению правительства, возникло из-за проблем со здоровьем, связанных с ежегодным сдвигом вперед и назад между стандартное время и летнее время. [1] 27 марта 2011 года москвичи перевели свои часы вперед в последний раз, эффективно наблюдая MSD, или UTC + 4, постоянно.

Я предполагаю, что это связано с базовыми библиотеками timezone.db или самой серверной системой. Попробуйте этот тест-скрипт ( Demo ):

date_default_timezone_set('Europe/Moscow');
echo date('d/m/Y H:i O'), "\n";
echo 'timezone default: ', date_default_timezone_get(), "\n";
echo 'timezone version: ', timezone_version_get();

Пример вывода:

05/11/2011 22:39 +0400
timezone default: Europe/Moscow
timezone version: 0.system

Если на вашем сервере отображаются неверные значения, обратитесь к администратору и / или обновите систему.

Редактировать: Этот тест-скрипт использует функцию PHP 5.3: timezone_version_get. Выход с установленным pecl timezonedb:

05/11/2011 23:17 +0400
timezone default: Europe/Moscow
timezone version: 2011.14
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...