Signatur
Beschreibung
intltz_get_error_message() ist die prozedurale Variante von IntlTimeZone::getErrorMessage() und liefert den menschenlesbaren Text der letzten Fehlermeldung, die innerhalb des übergebenen IntlTimeZone-Objekts aufgetreten ist. Diese Funktion ergänzt intltz_get_error_code(), mit der der numerische Fehlercode abgefragt werden kann.
Typischerweise wird diese Funktion nach Operationen mit IntlTimeZone-Objekten aufgerufen, um zu prüfen, ob eine Fehlersituation vorliegt und um diagnostische Informationen auszugeben oder zu protokollieren. Die Meldung wird von der ICU-Bibliothek generiert und ist auf Englisch.
Im Erfolgsfall – also wenn kein Fehler aufgetreten ist – gibt die Funktion den Wert 'U_ZERO_ERROR' zurück. Dieses Verhalten ist analog zu anderen intl-Funktionen und sollte bei der Fehlerprüfung berücksichtigt werden.
Parameter
| Name | Typ | Default | Beschreibung |
|---|---|---|---|
| $timezone Pflicht | IntlTimeZone | Das IntlTimeZone-Objekt, dessen letzte Fehlermeldung abgefragt werden soll. |
Rückgabewert
IntlTimeZone-Objekts als Zeichenkette zurück. Im Erfolgsfall (kein Fehler vorhanden) wird 'U_ZERO_ERROR' zurückgegeben.Beispiele
Einfache Fehlerprüfung nach dem Erstellen einer Zeitzone
<?php
$tz = IntlTimeZone::createTimeZone('Europe/Berlin');
$errorCode = intltz_get_error_code($tz);
$errorMessage = intltz_get_error_message($tz);
if ($errorCode !== U_ZERO_ERROR) {
echo 'Fehler aufgetreten: ' . $errorMessage . PHP_EOL;
} else {
echo 'Kein Fehler: ' . $errorMessage . PHP_EOL;
echo 'Zeitzone: ' . $tz->getID() . PHP_EOL;
}
Fehlermeldung bei ungültiger Zeitzone abfragen
<?php
// ICU erstellt bei unbekannter Zeitzone eine GMT-Fallback-Zone
$tz = IntlTimeZone::createTimeZone('Ungueltige/Zeitzone');
$errorCode = intltz_get_error_code($tz);
$errorMessage = intltz_get_error_message($tz);
echo 'Fehlercode: ' . $errorCode . PHP_EOL;
echo 'Fehlermeldung: ' . $errorMessage . PHP_EOL;
echo 'Verwendete Zeitzone: ' . $tz->getID() . PHP_EOL;
// Wichtig · Fallstricke
Hinweis: Die Funktion intltz_get_error_message() ist die prozedurale Entsprechung zur Methode IntlTimeZone::getErrorMessage(). In modernem objektorientiertem Code wird die Methode bevorzugt. Beide Varianten liefern identische Ergebnisse.
Die zurückgegebene Meldung stammt aus der ICU-Bibliothek und ist stets auf Englisch, unabhängig von der konfigurierten Locale. Für eine vollständige Fehlerdiagnose sollte immer auch intltz_get_error_code() bzw. die globale Funktion intl_get_error_message() herangezogen werden.