PHP DateTime UTC странное поведение - PullRequest
0 голосов
/ 17 октября 2018

Это пример кода:

$d = new DateTime('@1539691200');
$d->setTimezone(new DateTimeZone('UTC'));
var_dump($d);

Как видите, DateTime создается из метки времени, поэтому часовой пояс сервера игнорируется.Затем я установил часовой пояс на «UTC», который должен быть везде одинаковым.Но в любом случае вот вывод на моей машине:

object(DateTime)#1 (3) {
  ["date"]=>
  string(26) "2018-10-16 13:00:00.000000"
  ["timezone_type"]=>
  int(3)
  ["timezone"]=>
  string(3) "UTC"
}

И это вывод из здесь :

object(DateTime)#1 (3) {
  ["date"]=>
  string(26) "2018-10-16 12:00:00.000000"
  ["timezone_type"]=>
  int(3)
  ["timezone"]=>
  string(3) "UTC"
}

Так почему это происходит?Как UTC может отличаться на разных серверах?Может ли это быть проблема timezonedb ?

...