Ошибка в преобразовании времени PHP? - PullRequest
0 голосов
/ 14 марта 2019
TimeZoneNameFrom = 'PST';
TimeZoneNameTo = 'Europe/Amsterdam';
TimeStr = '2019-3-20 23:59:00';

$convertedTime = date_create($TimeStr, new DateTimeZone($TimeZoneNameFrom))->setTimezone(new DateTimeZone($TimeZoneNameTo))->format("j F H.i");

Почему это дает

21 марта 08,59 CET

вместо правильного

21 марта 07,59 CET

?

1 Ответ

2 голосов
/ 14 марта 2019

Полное раскрытие: переход на летнее время - не фанат.Я не могу объяснить, почему «ФДТ» также дает неправильный результат.Но вместо того, чтобы знать, какое сейчас время года и когда меняются часы, предложите поместить tz from и tz to в одну и ту же «единицу измерения» и дать компьютеру разобраться в этом.Используйте "America / Los_Angeles" для tz from, и вы должны увидеть ожидаемый результат.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...