Как на php правильно выводить дату из mysql в нужном часовом поясе?

Понимаю, что вопрос изъезжен вдоль и поперек, но я все равно запутался.

В mysql стоит SET time_zone = "+00:00". В php стоит date_default_timezone_set('UTC');
В БД время хранится в полях с типом timestamp (если я правильно понял, datetime лучше использовать для дат, не зависящих от часового пояса, например, дата рождения человека не может быть разной в разных часовых поясах) в UTC+0.

Каким образом автоматически выводить каждому пользователю время в его часовом поясе? На каком этапе вывода должна происходить конвертация? Т.е. это должна делать БД или php?

Я могу ошибаться, но, по-моему, на старом сервере с теми же настройками часовой пояс учитывался при выводе.
  • Вопрос задан
  • 3380 просмотров
Решения вопроса 2
nazarpc
@nazarpc
Open Source enthusiast
Храните время в Unix TimeStamp, а на стороне PHP функции date() и strtotime() всегда будут работать в часовом поясе указанном в

date_default_timezone_set('UTC');
вы главное тут правильно укажите.
Ответ написан
egor_nullptr
@egor_nullptr
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽