2

我有这行代码将夏令时设置为“开”,将其设置为“关”的正确方法是什么

// is daylight saving On?
$rcmail_config['dst_active'] = (bool)date('I');
4

1 回答 1

2

date('I')(这是一个大写字母 i)当当前默认时区在 DST 时返回 1。

如果它返回 1 而不是 0并且相关时区不在 DST中,则您选择的时区不正确它使用的时区数据已过期。

如果可以,请尝试将DateTime 对象已 设置为正确时区的 DateTimeZone 对象一起使用。format('I')对结果对象的调用应该是正确的。如果不是,则您的时区数据已过时。这有时是在服务器级别完成的。请确保服务器的时区数据库是最新的。PHP 有时包含它自己的时区数据文件,因此您可能需要实际更新 PHP。

于 2011-03-16T19:55:55.847 回答