Задача:
Виджет выбора часового пояса, позволяющий посетителям сайта выбирать свой часовой пояс, должен быть создан и заполнен достоверными данными.Он должен предлагать следующие варианты:
GMT-11 (HH:MM actual time in that zone)
GMT-10 (...)
GMT-1 (...)
... now for the tricky part:
GMT (...)
GMT+1 (...)
... and then all the way until +12.
Когда пользователь выбирает другой часовой пояс, сервер должен иметь возможность определить, какой часовой пояс установить.Эта вторая часть не представляет большой проблемы, как только список заполнен правильными данными.
Проблема:
Сложная часть получает фактические часовые пояса, которые в настоящее время находятся виспользовать по всему миру.Я знаю, как получить полный список часовых поясов, как получить их смещения и текущие настройки летнего времени.Но у каждого часового пояса есть два варианта: обычное время и время перехода на летнее время.
В приведенном выше списке я отметил некоторую "хитрую" часть.Это где часовые пояса, такие как Европа / Лондон.В обычное время Европа / Лондон = GMT, но во время летнего времени, Европа / Лондон = GMT + 1 ... Вы видите проблему?
Меня также беспокоит то, что не все часовые пояса меняются с летнего на летнее.обычное время и наоборот, поэтому я не могу просто заполнить список общими данными, такими как -11 = GMT-11, -10 = GMT-10, ... , а затем просто применить некоторую логику, чтобы найтичасовой пояс с соответствующей разницей во времени, а затем установите этот часовой пояс по умолчанию с этого момента.
Мне интересно узнать, как другие сайты, использующие эту функцию переключения часовых поясов, предлагают списокчасовые пояса и логика, чтобы выбрать правильный часовой пояс, в зависимости от выбора пользователя?Что-то еще, что вы хотели бы добавить или спросить?