2013-07-22 6 views
5

Ich versuche timezone_name_from_abbr() mit einem GMT + 0800, Offset zu verwenden, aber es die erwarteten Zeitzone nicht zurück:PHP: Warum funktioniert timezone_name_from_abbr nicht mit einem GMT Offset von 8?

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

Gemäß der Dokumentation dieses funktionieren soll:

Wenn abbr nicht vorhanden ist, wird die Zeitzone ausschließlich von gmtOffset und isdst durchsucht.

Was mache ich falsch? GMT + 0800 ist eine gültige Zeitzone für Asia/Singapore.

Antwort

11

Keine sehr ausgefallene Antwort, aber es ist ein Fehler (Bug #44780 - some time zone offsets not recognized by timezone_name_from_abbr), der schon seit einiger Zeit existiert.

Grundsätzlich wird diese bestimmte Zeitzone (und some others) nur zu einem Namen aufgelöst, wenn Sie eine Abkürzung übergeben, unabhängig davon, was die Dokumentation sagt.

Btw, der Rückgabewert ist false in dem Fall, in dem die Funktion den Namen nicht auflösen kann.

Verwandte Themen