我想知道此时区是否处于夏令时 我使用了以下代码
$userTimezone = new DateTimeZone("America/Phoenix");
$datObj = new DateTime(date('Y-M-d H:i:s'),$userTimezone);
$dls = $datObj->format('I');
$dls
的值为0,但是此时区实际上是夏令时
以下时区对我来说效果很好
America/Chicago
America/New_York
America/Los_Angeles
任何人都可以帮助我解决这个问题吗?
答案 0 :(得分:2)
自1967年以来,America / Phoenix时区一直未实行夏令时。这是IANA 2019c中的规则:
# Zone NAME STDOFF RULES FORMAT [UNTIL]
Zone America/Phoenix -7:28:18 - LMT 1883 Nov 18 11:31:42
-7:00 US M%sT 1944 Jan 1 0:01
-7:00 - MST 1944 Apr 1 0:01
-7:00 US M%sT 1944 Oct 1 0:01
-7:00 - MST 1967
-7:00 US M%sT 1968 Mar 21
-7:00 - MST
因此唯一仍然有效的规则是最后一个规则,将时区置于MST。