TimeZoneNameFrom = 'PST';
TimeZoneNameTo = 'Europe/Amsterdam';
TimeStr = '2019-3-20 23:59:00';
$convertedTime = date_create($TimeStr, new DateTimeZone($TimeZoneNameFrom))->setTimezone(new DateTimeZone($TimeZoneNameTo))->format("j F H.i");
为什么这样做
2008年3月21日CET
而不是正确的
2007年3月21日中欧时间
?
完全披露:夏令时 - 不是粉丝。我无法解释为什么“PDT”也会给出错误的结果。但不必知道一年中的什么时间以及时钟何时发生变化,建议将tz和tz放入相同的“度量单位”并让计算机弄明白。使用“America / Los_Angeles”来表示tz,你应该看到预期的结果。