Наблюдает ли UTC летнее время?

Я пытаюсь написать сценарий, где я хочу конвертировать любой часовой пояс в UTC и наоборот. Но от некоторых, где я узнал, что при преобразовании любого часового пояса в UTC с учетом DST или без него, это даст то же время UTC . Например: если я попытаюсь преобразовать это:

 $mytime = '2011-03-31 05:06:00.000'; $myzone = 'America/New_York'; 

к UTC с DST и без DST, я получу ..

 (New_York->UTC DST=Yes)2011-03-31 09:06:00 (New_York->UTC DST=No)2011-03-31 09:06:00 .......... 

Является ли это причиной? Если да, то почему ??? Пожалуйста, дайте мне свои ответы.

Нет, UTC никогда не имеет DST. Это постоянная система отсчета, в которой другие временные зоны выражены относительно.

Из Википедии UTC страница :

UTC не изменяется с изменением времен года, но местное время или гражданское время могут измениться, если юрисдикция часового пояса соблюдает летнее время или летнее время. Например, UTC на 5 часов опережает местное время на восточном побережье Соединенных Штатов в течение зимы, но на 4 часа вперед в течение лета.

Другими словами, когда часовой пояс наблюдает за DST, его смещение от UTC изменяется, когда происходит переход на летнее время, но это тот часовой пояс, где наблюдаются DST, а не UTC.

Не зная о работе с часовым поясом PHP, мне кажется странным, что вы можете указать «с DST» или «без DST» в преобразовании – сами часовые пояса указывают, когда DST пинается … это не должно быть то, что вы указываете сами.

У меня такая же проблема, используя этот код:

 date_default_timezone_set('UTC'); $nowdate = date('l jS \of FY h:i:s A'); echo "Current date and time is: " . $nowdate; 

Сейчас лето, и время, которое этот код производит, отстает на один час – поэтому я не думаю, что время UTC в PHP настраивается на DST.

Интересно посмотреть, есть ли у кого-нибудь решение …

РЕДАКТИРОВАТЬ:

Нашел этот код на форуме, отлично работает !!

 date_default_timezone_set('Europe/London'); $TIME = date("m/d/YH:i",time()); 

Таким образом, вы можете вызвать текущую дату и время, используя $ TIME. Выход можно настроить, чтобы отобразить его по-другому, изменив бит внутри тега date (). Если вы хотите настроить вывод date (), используйте это руководство: http://php.net/manual/en/function.time.php

Надеюсь это поможет 🙂