php根据给定的GMT偏移量设置我自己的时区



我的GMT偏移量以秒为单位。我想set_default_time_zone()到那个GMT偏移。我的意思是,如果我的GMT偏移量为2小时(7200秒),它将把时区设置为GMT+2。如果我有3小时(10800秒),我将把时区设为GMT+3,我该怎么做?CCD_ 2仅接受预定义的时区字符串。

您可以使用GMT偏移,但必须使用Etc前缀。以下工作:

date_default_timezone_set('Etc/GMT+5');

但这是一种不受欢迎的做法,请参阅此处:http://php.net/manual/en/timezones.others.php

此外,我个人建议不要使用偏移,因为在日期/时间处理中存在许多陷阱,GMT偏移可能会导致糟糕的结果(例如夏令时,一周的第一天)。

通常建议在内部使用UTC,并将当地时间设置为地理时区,而不是GMT偏移。

最新更新