我正在尝试使用偏移量为GMT + 0800的timezone_name_from_abbr()
,但它不会返回预期的时区:
echo "timezone =" . timezone_name_from_abbr('', 8 * 60 * 60, 0) . '<br/>';
根据文档,这应该有效:
如果
abbr
不存在,则时区仅由gmtOffset
和isdst
搜索。
我做错了什么? GMT + 0800是Asia/Singapore
的有效时区。
答案 0 :(得分:11)
这不是一个非常奇特的答案,但它是一个已经存在很长一段时间的错误(Bug #44780 - some time zone offsets not recognized by timezone_name_from_abbr)。
基本上,当您传递缩写时,此特定时区(和some others)仅解析为名称,无论文档说什么。
顺便说一句,在函数无法解析名称的情况下,返回值为false
。