简单的问题,但似乎无法找到答案
我需要将时区设置为UTC-8并且只有UTC-8(GMT-8实际上是相同的)。它不能是节省日光时间的时区。
现在PHP似乎没有提供设置为GMT-8的方法,当使用Etc/GMT-8
时我得到了错误的时间(我之前得到了偏移方式)like it says in the DOCS
现在我可以使用GMT + 8来实现GMT-8(听起来很奇怪但是我引用:
警告如果您忽视上述警告,请另外注意 提供PHP时区支持的IANA时区数据库使用POSIX 样式符号,导致Etc / GMT + n和Etc / GMT-n时区 从普通用途中撤消。例如,时区8小时 在中国和西澳大利亚使用的GMT之前(以及其他 这个数据库中实际上是Etc / GMT-8,而不是Etc / GMT + 8 通常会期待。
由于UTC-8中没有国家,我不能把国家放在那里......
所以我使用Etc / GMT + 8并交叉手指他们不会改变它?
答案 0 :(得分:1)
是的,您绝对可以将Etc/GMT+8
用于固定为UTC-8的时区。不,它不会改变。 IANA时区名称是标识符,并且保证不会从tz数据库中删除它们。
那就是说,我要求你质疑为什么你需要一个UTC-8固定偏移时区:
是因为您在Pitcairn Islands(人口49)上引用时间?如果是,请使用Pacific/Pitcairn
。
是否因为您正在计算在海拔112.5°W到127.5°W之间的海上船舶的时间?如果是,请使用Etc/GMT+8
。
是因为您认为DST不重要,或者您不喜欢它,或者您被要求不包含它等等?对不起,不管你喜欢与否 - 实际占据这些区域的人确实使用夏令时。如果您选择不这样做,那么您的时钟将在一年中的相当一部分时间与他们的时钟不同。使用America/Los_Angeles
,America/Tijuana
,America/Vancouver
,America/Dawson
或America/Whitehorse
。