Как локализовать время с пользователем на сайте?

Допустим я живу в москве utc +3 и на сайте я вставляю московское время 10:00 , как сделать так чтобы пользователь допустим из Владивостока utc+10 видел время на сайте 17:00 ?
  • Вопрос задан
  • 102 просмотра
Пригласить эксперта
Ответы на вопрос 2
alekseyHunter
@alekseyHunter
Android developer
Чтобы узнать время на клиенте, то придётся спросить клиент. Для этого вам понадобится JavaScript и функция getTimezoneOffset(). Но даже в этом случае учтите, что не у всех пользователей корректно выставлен часовой пояс, а JavaScript сообщает только о смещении часового пояса, что недостаточно для определения часового пояса.

В целом, если ваш сервис ограничен географически, то часто достаточно установить часовой пояс по умолчанию и не заморачиваться. Для российских сервисов дата по Москве — это нормально и ожидаемо. Если вы хотите сделать сервис удобным для пользователей в любой точке планеты, то предоставьте пользователю возможность выбора часового пояса и пытайтесь угадать часовой пояс по информации, предоставляемой JavaScript.
Ответ написан
@demon51085
На сервере ставь время php и базы в utc +0, в базе храни время в UNIX_TIMESTAMP в поле int, а на клиенте преобразуй в локальное время с помощью toTimeString(). Зачем ставить московское время, если не у всех московское время? Работай с нулевой зоной.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы