@skajtersen

Как правильно сменить часовой пояс у выводимых данных?

В базе данных хранятся даты со временем в формате timestamp with timezone. Во вьюшке с помощью DetailView эти даты выводятся.
'value' => function($model) { return isset($model->date) ? (new DateTime($model->date))->setTimezone('Europe/Moscow'))->format('Y-m-d H:i:s');

В данном случае данные отображаются точно так же, как их видно в БД. Хочу сменить часовой пояс, добавляю
->modify('+1 hours')
Есть так же Datetimepicker, с помощью которого выбираются границы даты для фильтрации. Разумеется, после добавления часа фильтрация начинает работать некорректно.
Подскажите, как организовать отображение даты с переводом к любой временной зоне?
  • Вопрос задан
  • 160 просмотров
Пригласить эксперта
Ответы на вопрос 1
webinar
@webinar Куратор тега Yii
Учим yii: https://youtu.be/-WRMlGHLgRg
Yii2. Как вывести дату в зависимости от timeZone?

Как вариант:
$formatter = \Yii::$app->formatter;
$formatter->timeZone = 'Europe/Minsk'; //тут не помню timeZone или defaultTimeZone
echo $formatter->asDate('2017-01-01', 'long');
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы