Start · Sprachen · PHP · Referenz · intltz_get_gmt

intltz_get_gmt

Funktion

Gibt ein <code>IntlTimeZone</code>-Objekt zurück, das die GMT (UTC)-Zeitzone repräsentiert.

seit PHP 5.5.0 Kategorie: string

Signatur

intltz_get_gmt(): IntlTimeZone

Beschreibung

intltz_get_gmt() ist die prozedurale Variante von IntlTimeZone::getGMT() und liefert ein IntlTimeZone-Objekt, das die GMT/UTC-Zeitzone (ohne Offset) darstellt. Diese Zeitzone hat keinen Sommer- oder Winterzeitunterschied und entspricht immer UTC+0.

Die Funktion ist nützlich, wenn man einen festen, neutralen Zeitzonenbezugspunkt benötigt, etwa zur Normalisierung von Datums- und Zeitangaben oder beim Vergleich von Zeitstempeln aus verschiedenen Zeitzonen. Sie ist Teil der Internationalization Extension (intl) und basiert auf der ICU-Bibliothek.

Im Gegensatz zu intltz_create_time_zone('UTC') ist diese Methode eine direkte, benannte Abkürzung für die GMT-Zeitzone und erfordert keine Zeichenketteneingabe, was Tippfehler verhindert und den Code lesbarer macht.

Rückgabewert

Typ
IntlTimeZone
Beschreibung
Gibt immer ein IntlTimeZone-Objekt zurück, das die GMT (UTC+0)-Zeitzone ohne jeglichen Offset repräsentiert.

Beispiele

GMT-Zeitzone abrufen und anzeigen

<?php
$tz = intltz_get_gmt();
echo $tz->getID(); // Ausgabe: GMT
echo PHP_EOL;
echo $tz->getRawOffset(); // Offset in Millisekunden: 0
GMT 0

Zeitzone für IntlDateFormatter verwenden

<?php
$gmtTz = intltz_get_gmt();

$formatter = new IntlDateFormatter(
    'de_DE',
    IntlDateFormatter::FULL,
    IntlDateFormatter::FULL,
    $gmtTz,
    IntlDateFormatter::GREGORIAN
);

$timestamp = mktime(12, 0, 0, 6, 15, 2024);
echo $formatter->format($timestamp);
Samstag, 15. Juni 2024 um 10:00:00 Mittlere Greenwich-Zeit

// Wichtig · Fallstricke

Die Funktion ist ein prozeduraler Alias für die statische Methode IntlTimeZone::getGMT(). Beide Varianten liefern identische Ergebnisse. In objektorientiertem Code wird die Methode bevorzugt.

Zu beachten ist, dass GMT und UTC in der Praxis zwar gleichwertig behandelt werden, technisch jedoch unterschiedliche Standards sind. intltz_get_gmt() liefert speziell GMT, nicht den Bezeichner UTC. Wer explizit ein Objekt mit der ID UTC benötigt, sollte stattdessen intltz_get_unknown() oder intltz_create_time_zone('UTC') verwenden.