@zeaovede

Как вывести время в текущем часовом поясе?

Сейчас выводит +8 часов от текущего времени. Как вывести время в текущем часовом поясе исходя из примера:

function getUserRegDate() {
$current_user = wp_get_current_user(); // Получаем данные текущего пользователя
if ($current_user->ID != 0) { // Проверяем, залогинен ли пользователь
    $user_reg = $current_user->user_registered;
    $datetime = new DateTime($user_reg);
} else {
    echo "Пользователь не залогинен";
}
$formatter = new IntlDateFormatter(
    'ru_RU',
    IntlDateFormatter::LONG,
    IntlDateFormatter::LONG
);
$formatter->setPattern('d MMMM, hh:mm');
echo $formatter->format($datetime);
}
  • Вопрос задан
  • 111 просмотров
Решения вопроса 1
vhood
@vhood
Не забывайте отмечать решения
По коду:
$datetime создается внутри условия, в else не хватает return, т.к. код дальше требует переменную $datetime, которой нет ($formatter->format($datetime))

По вопросу:
Часовой пояс устанавливается так
$datetime = new DateTime($user_reg);
+ $datetime->setTimezone(new DateTimeZone('Europe/Moscow'));

Но, скорее всего, в системе нужно установить часовой пояс глобально. Если это так:
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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