太平洋/奥克兰的PHP时区问题 - 获得不同的价值

时间:2014-08-22 05:28:01

标签: php timezone timestamp-with-timezone

    $user_timezone_from =  'UTC';
    $user_timezone_to =  'Pacific/Auckland';
    $date = new DateTime('2015-08-21 14:00', new DateTimeZone($user_timezone_from)); 
    $date->setTimezone(new DateTimeZone($user_timezone_to)); 
    echo $cur_gmt_date = $date->format('Y-m-d H:i:s');

    $date = new DateTime('2015-09-29 14:00', new DateTimeZone($user_timezone_from)); 
    $date->setTimezone(new DateTimeZone($user_timezone_to)); 
    echo $cur_gmt_date = $date->format('Y-m-d H:i:s');

我得到了不同的结果。

2015-08-22 02:00:00

2015-09-30 03:00:00应该是2015-09-30 02:00:00

为什么我错了价值?

1 个答案:

答案 0 :(得分:1)

Wikipedia tells me在9月的最后一个星期天,新西兰的DST发生了变化。因此与夏令时相差一小时。