Задать вопрос

Почему выдается разница во времени между одной и той же timezone?

Почему вот такой код выдает разницу во времени:
$cur_tz = new DateTimeZone('Asia/Yekaterinburg');
$dt = new DateTime('now', $cur_tz);
$cur_tz2 = new DateTimeZone('Asia/Yekaterinburg');
$dt2 = new DateTime('now', $cur_tz2);  
echo $cur_tz2->getOffset($dt);

По моим ожиданиям результат должен быть 0, а я получаю 18000.
  • Вопрос задан
  • 49 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
Sanasol
@Sanasol Куратор тега PHP
нельзя просто так взять и загуглить ошибку
getOffset это не разница, а просто смещение в любом случае от UTC, только по "правилам" той таймзоны с которой "сравнивается". (Подразумевается видимо что-то вроде летнего или зимнего времени которое существует не везде)
php.net/manual/ru/datetimezone.getoffset.php

php.net/manual/ru/function.timezone-offset-get.php...
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
romanko_vn
@romanko_vn
Причем тут разница, getOffset это смещение часовой зоны относительно UTC
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽