PHP:为什么timezone_name_from_abbr的GMT偏移量不是8?

Ext*_*kun 6 php

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

echo "timezone =" . timezone_name_from_abbr('', 8 * 60 * 60, 0) . '<br/>';
Run Code Online (Sandbox Code Playgroud)

根据文档,这应该工作:

如果abbr不存在,那么时区仅由gmtOffset和搜索isdst.

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

Ja͢*_*͢ck 12

这不是一个非常奇特的答案,但它是一个错误(Bug#44780 - timezone_name_from_abbr无法识别的某些时区偏移)已经存在了很长一段时间.

基本上,无论文档说什么,当您传递缩写时,此特定时区(以及其他一些时区)仅解析为名称.

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