服务器时间的GMT是否会在夏令时变化?

时间:2015-03-10 09:36:10

标签: php apache

我有这个命令:

<?php 
$now = new DateTime(); 
echo $now->format("M j, Y H:i:s O")."\n"; 
?>

现在提供-0400作为GMT值。

我不记得3月8日之前的价值是什么(夏令时的变化)。还在-0400吗?或者可能是-0500

(我有一个不同的脚本应该与我的服务器时间同步,所以我需要知道这一点,以了解我是否应该更改我的脚本的GMT,手动设置为-0400

1 个答案:

答案 0 :(得分:1)

正如马克所说,GMT不会改变。仅(可能)您的本地偏移量。

要计算特定日期的GMT偏移量,您可以使用timezone_offset_get,它将以秒为单位返回偏移量。

多米尼加共和国的例子:

$timezone = new DateTimeZone('America/Dominica');
$date = new DateTime('2015-03-07', $timezone);
echo $timezone->getOffset($date);

请注意,GMT-4时区中的大多数国家/地区实际上没有任何夏令时更改,因此您可能会发现偏移量始终完全相同,具体取决于国家/地区。