2013-07-22 14 views
5

私はGMT + 0800のオフセットでtimezone_name_from_abbr()を使用しようとしているが、それは予想される時間帯は戻りません:これは動作するようになっているドキュメントによるとPHP:なぜtimezone_name_from_abbrはGMTオフセット8で動作しないのですか?

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

を:

abbrが存在しない場合、タイムゾーンはgmtOffsetisdstによってのみ検索されます。

私は間違っていますか? GMT + 0800はAsia/Singaporeの有効なタイムゾーンです。

答えて

11

非常に派手な答えではありませんが、それはかなり長い間存在していたバグです(Bug #44780 - some time zone offsets not recognized by timezone_name_from_abbr)。

基本的に、この特定のタイムゾーン(およびsome others)は、ドキュメントの内容にかかわらず、省略形を渡すときにのみ名前に変換されます。

Btwの場合、戻り値は関数が名前を解決できない場合はfalseです。

関連する問題