У меня есть этот кодPHP gmdate возвращает время один час за
if (date_default_timezone_get()) {
echo 'date_default_timezone_set: ' . date_default_timezone_get() . '<br />';
}
echo 'time: ' .date('Y-m-d H:i:s'). '<br />';
if (ini_get('date.timezone')) {
echo 'date.timezone: ' . ini_get('date.timezone'). '<br />';
}
echo 'time: ' .gmdate("Y-m-d\TH:i:s.\\0\\0\\0\\Z", time()). '<br />';
и это выход я получаю
date_default_timezone_set: Europe/London
time: 2016-03-29 21:26:41
date.timezone: Europe/London
time: 2016-03-29T20:26:41.000Z
Так что мой php.ini установлен в Лондоне, и до сих пор является GMT один час сзади. Независимо от того, что я делаю, gmdate - это всегда одно и то же время, что неверно, потому что accourding to world clock, GMT сейчас - 19:26.
Я бегу на localhost. Мое местное время & машинное время при запуске кода было 22:26. Я попытался изменить эти часовые пояса в php.ini:
- Азия/Кувейт - GMT + 4
- Азия/Иерусалим - GMT + 3
- Европа/Берлин - GMT + 1
- Европы/Лондон - 0
ничего не помогает. Есть идеи?
UPDATE & РЕШЕНИЕ
Как указывается в комментариях, этот вопрос связан с экономией дневного света. Час на моем компьютере установлен в правильное местное время в моей стране. Тем не менее, я думаю, они изменили дату, когда время было перемещено, это было изменено около 1 недели назад, и, проверяя панель управления Windows, она ожидала этого только 1 апреля.
Единственное, что сработало для меня, - это изменить часовой пояс на моем компьютере в другой часовой пояс. Не отличное решение, и мне, вероятно, придется снова изменить на следующей неделе, но он работает на данный момент.
Чтобы изменить часовой пояс на окнах, это то, что я сделал: 1) Открытая дата и время, нажав кнопку Пуск нажмите кнопку «Панель управления», выберите «Часы», «Язык» и «Регион», а затем нажмите «Дата и время». 2) Изменить часовой пояс -> изменить часовой пояс. 3) Отрегулируйте время.
летние снегом? –