Ecl*_*pse 5 php timezone utc gmt
我开发了一个应用程序,它记录了某些记录何时被修改和创建,所以基本上我们使用该time()函数记录保存更改的时间.
我在英国,所以我的时区必须是GMT.然而在英国,我们使用夏令时,所以在夏天我们不再使用GMT而是使用BST.
如何更改使用BST的时区(即GMT +1).我想在我的php文件中声明它,以便它很容易更改.这就是我现在所拥有的:
date_default_timezone_set("UTC");
Run Code Online (Sandbox Code Playgroud)
当我将其更改为:
date_default_timezone_set("BST");
Run Code Online (Sandbox Code Playgroud)
我得到一个PHP错误Timezone ID 'BST' is invalid,当我将其更改为欧洲/伦敦时,它仍然保持GMT而不是BST
您将时区设置为Europe/London,在适当的日期自动在GMT和BST之间转换.时区包含这些信息,基本上是时区(在PHP意义上).
PHP手册可以轻松地将其作为示例包含在内:
$timezone = new DateTimeZone("Europe/London");
$transitions = $timezone->getTransitions();
print_r(array_slice($transitions, 0, 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
)
)
Run Code Online (Sandbox Code Playgroud)