加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP时区问题| BST和GMT

发布时间:2020-12-13 17:48:44 所属栏目:PHP教程 来源:网络整理
导读:我开发了一个应用程序,它记录了某些记录何时被修改和创建,所以基本上我们使用time()函数来记录保存更改的时间. 我在英国,所以我的时区必须是GMT.然而在英国,我们使用夏令时,所以在夏天我们不再使用GMT而是使用BST. 如何更改使用BST的时区(GMT 1).我想在我的p
我开发了一个应用程序,它记录了某些记录何时被修改和创建,所以基本上我们使用time()函数来记录保存更改的时间.

我在英国,所以我的时区必须是GMT.然而在英国,我们使用夏令时,所以在夏天我们不再使用GMT而是使用BST.

如何更改使用BST的时区(GMT 1).我想在我的php文件中声明它,以便它很容易更改.这就是我现在所拥有的:

date_default_timezone_set("UTC");

当我将其更改为:

date_default_timezone_set("BST");

我得到一个PHP错误时区ID’BST’无效,当我将其更改为欧洲/伦敦时,它仍然保持GMT而不是BST

解决方法

您将时区设置为欧洲/伦敦,在适当的日期自动在GMT和BST之间转换.时区包含这些信息,基本上是时区(在PHP意义上).

PHP手册可以轻松地包含this as a sample:

$timezone = new DateTimeZone("Europe/London");
$transitions = $timezone->getTransitions();
print_r(array_slice($transitions,3));

Array
(
    [0] => Array
        (
            [ts] => -9223372036854775808
            [time] => -292277022657-01-27T08:29:52+0000
            [offset] => 3600
            [isdst] => 1
            [abbr] => BST
        )

    [1] => Array
        (
            [ts] => -1691964000
            [time] => 1916-05-21T02:00:00+0000
            [offset] => 3600
            [isdst] => 1
            [abbr] => BST
        )

    [2] => Array
        (
            [ts] => -1680472800
            [time] => 1916-10-01T02:00:00+0000
            [offset] => 0
            [isdst] => 
            [abbr] => GMT
        )

)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读