Signatur
Beschreibung
intltz_get_id() ist die prozedurale Variante der Methode IntlTimeZone::getID() und gibt den eindeutigen Bezeichner einer Zeitzone zurück, wie er vom ICU-Bibliothekssystem definiert wird. Typische Bezeichner folgen dem IANA-Format, z. B. Europe/Berlin, America/New_York oder UTC.
Die Funktion ist nützlich, wenn man mit IntlTimeZone-Objekten arbeitet und den Bezeichner für die Weiterverarbeitung, Anzeige oder Speicherung in einer Datenbank benötigt. Sie kann beispielsweise nach dem Erstellen einer Zeitzone via IntlTimeZone::createTimeZone() oder IntlTimeZone::createDefault() aufgerufen werden, um den tatsächlich verwendeten Bezeichner zu ermitteln.
Im objektorientierten Stil steht die äquivalente Methode IntlTimeZone::getID() zur Verfügung. Beide Varianten liefern identische Ergebnisse. Bei ungültigen Zeitzonenobjekten wird false zurückgegeben.
Parameter
| Name | Typ | Default | Beschreibung |
|---|---|---|---|
| $timezone Pflicht | IntlTimeZone | Ein gültiges IntlTimeZone-Objekt, dessen ID abgefragt werden soll. |
Rückgabewert
Europe/Berlin). Gibt false zurück, wenn das Objekt ungültig ist oder die ID nicht ermittelt werden konnte.Beispiele
Zeitzonen-ID einer Standard-Zeitzone abrufen
<?php
$tz = IntlTimeZone::createTimeZone('Europe/Berlin');
$id = intltz_get_id($tz);
echo $id;
Standard-Systemzeitzone ermitteln und ID ausgeben
<?php
// Standard-Zeitzone des Systems (entspricht date_default_timezone_get())
$tz = IntlTimeZone::createDefault();
$id = intltz_get_id($tz);
echo 'System-Zeitzone: ' . $id;
// Vergleich: Zeitzone anhand eines DateTimeZone-Objekts erstellen
$phpTz = new DateTimeZone('America/New_York');
$intlTz = IntlTimeZone::fromDateTimeZone($phpTz);
echo PHP_EOL . 'Zeitzone aus DateTimeZone: ' . intltz_get_id($intlTz);
Ungültige Zeitzone und Fehlerbehandlung
<?php
$tz = IntlTimeZone::createTimeZone('Ungueltig/Zeitzone');
$id = intltz_get_id($tz);
if ($id === false) {
echo 'Zeitzone konnte nicht ermittelt werden.';
} else {
// ICU gibt bei unbekannten Bezeichnern oft einen Fallback zurück
echo 'Zeitzone: ' . $id;
}
// Wichtig · Fallstricke
Hinweis: ICU gibt bei ungültigen Zeitzonenbezeichnern nicht immer false zurück, sondern kann einen Fallback-Bezeichner wie GMT+0:00 liefern. Prüfen Sie daher den zurückgegebenen Wert sorgfältig, wenn Sie nicht sicher sind, ob der übergebene Bezeichner gültig ist.
Die Funktion ist das prozedurale Äquivalent zu IntlTimeZone::getID(). Beide sind funktional identisch. In neuem Code wird der objektorientierte Stil empfohlen.