Я хотел спросить, сработает ли это, прежде чем я приступил к полноценному рефакторингу того, как я обрабатываю дату и время.
Чтобы сформулировать мой вопрос, вот моя проблема ... Я храню «действия», предпринятые пользователем, в таблице истории. Эти действия имеют отметку времени. Пользователи могут быть со всего мира и, следовательно, иметь разные часовые пояса. Я хочу отобразить элементы в истории и показать отметки времени в местном часовом поясе.
Кроме того, я знаю, что могу использовать поля даты и времени и просто хранить форматы времени в формате UTC, но я предпочитаю использовать метку времени, чтобы установить текущее время по умолчанию.
Сработает ли это для моей проблемы?
Часовой пояс моего сервера будет Лос-Анджелес.
Хранить метки времени как метки времени в MySQL. Насколько я понимаю, метка времени всегда хранится в формате UTC. Записи будут храниться по умолчанию как creation_date ИЛИ я явно установлю UTC_TIMESTAMP (). Фактически, все записи в базе данных будут в формате UTC.
Когда пользователь входит в систему, я получаю его часовой пояс (я сохраняю его в базе данных как пользовательскую настройку). В этом примере предположим, что этот человек находится в Нью-Йорке.
Вот где мой вопрос. Будет ли работать что-то из этого?
ИЛИ
Будет ли работать вариант 4b? Есть ли лучший способ перевести время Лос-Анджелеса на время Нью-Йорка?
Есть ли вообще лучший способ сделать это?