Расчет часового пояса - PullRequest
0 голосов
/ 25 мая 2011

Разрабатываю веб-сайт, как онлайн-портал путешествий. Проблема показывает время по Гринвичу для разных регионов при бронировании рейса и список времени. Кто-нибудь дает идею рассчитать и показать время для разных стран?

Спасибо

1 Ответ

2 голосов
/ 25 мая 2011

Хотя довольно сложно ответить на ваш вопрос без ссылки на конкретную технологию, я постараюсь.

Обнаружение часового пояса конечного пользователя

Определенно, вся информация о времени должна быть представлена ​​как в локальном формате , так и местном часовом поясе . Под локальным я имею в виду тот, который используется конечным пользователем.
Я предполагаю, что ваше приложение не потребует создания пользовательских профилей. Я также предполагаю, что расписание рейсов не будет отображаться на первой странице, и пользователю потребуется выполнить поиск. В этом случае у вас есть три варианта:

  • Позволяет пользователю указать часовой пояс из выпадающего списка. У меня нет способа показать вам, как это сделать, не обращаясь к конкретной технологии. Единственное, на что я должен указать, это представить смещение UTC, название часового пояса и список городов, например: UTC + 01: 00 Центрально-европейское время (Париж, Берлин, Варшава) .

  • Вы можете прочитать текущее смещение часового пояса с помощью JavaScript и отправить его на сервер

В этом случае вы можете использовать следующий фрагмент кода для определения смещения:

var now = new Date();
var offset = now.getTimezoneOffset();

Это даст вам текущее смещение по Гринвичу в минутах. Проблема с этим решением состоит в том, что это смещение может отличаться на целевую дату.

  • Очевидно, что вы также можете отправлять даты в формате GMT ​​в инвариантной форме в браузер (например, в формате ISO8601: 2011-05-25T11: 07Z ) и форматировать эту дату на клиенте с помощью JavaScript. Я никогда не слышал, например, о плагине JQuery, который бы делал это правильно (с учетом локальных форматов). Похоже, вам придется написать свой собственный.

Форматирование даты и времени, а также преобразование часового пояса

Ха, это зависит от решения, которое вы хотите реализовать, а также от технологии, которую вы хотите использовать. Пока я не могу здесь много писать.

...