PHP:为什么赢得#timezone_name_from_abbr的GMT偏移量为8?

时间:2013-07-22 13:18:14

标签: php

我正在尝试使用偏移量为GMT + 0800的timezone_name_from_abbr(),但它不会返回预期的时区:

echo "timezone =" . timezone_name_from_abbr('', 8 * 60 * 60, 0) . '<br/>';

根据文档,这应该有效:

  

如果abbr不存在,则时区仅由gmtOffsetisdst搜索。

我做错了什么? GMT + 0800是Asia/Singapore的有效时区。

1 个答案:

答案 0 :(得分:11)

这不是一个非常奇特的答案,但它是一个已经存在很长一段时间的错误(Bug #44780 - some time zone offsets not recognized by timezone_name_from_abbr)。

基本上,当您传递缩写时,此特定时区(和some others)仅解析为名称,无论文档说什么。

顺便说一句,在函数无法解析名称的情况下,返回值为false