trigger_error

(PHP 4 >= 4.0.1, PHP 5, PHP 7, PHP 8)

trigger_error Erzeugt eine benutzerdefinierte Fehlermeldung/Warnung/Benachrichtigung

Beschreibung

trigger_error(string $message, int $error_level = E_USER_NOTICE): true

Wird verwendet, um eine benutzerdefinierte Fehlerbedingung auszulösen und kann in Verbindung mit der eingebauten Fehlerbehandlung verwendet werden oder mit einer benutzerdefinierten Funktion, die mittels set_error_handler() als neue Fehlerbehandlung festgelegt wurde.

Diese Funktion ist nützlich, wenn Sie zur Laufzeit eine bestimmte Rückmeldung bei einer Ausnahme brauchen.

Parameter-Liste

message

Die gewünschte Fehlermeldung für diesen Fehler. Die Länge ist auf 1024 Bytes begrenzt, darüber hinausgehende Zeichen werden abgeschnitten.

error_level

Der gewünschte Fehlertyp für diesen Fehler. Es können nur Konstanten der E_USER_*-Familie gewählt werden, der Vorgabewert ist E_USER_NOTICE.

Warnung

Die Übergabe von E_USER_ERROR als error_level ist nun veraltet. Stattdessen sollte eine Exception geworfen oder exit() aufgerufen werden.

Rückgabewerte

Gibt immer true zurück.

Fehler/Exceptions

Wenn error_level nicht einer der Werte E_USER_ERROR, E_USER_WARNING, E_USER_NOTICE, E_USER_DEPRECATED ist, wirft diese Funktion einen ValueError.

Changelog

Version Beschreibung
8.4.0 Die Übergabe von E_USER_ERROR als error_level ist nun veraltet. Stattdessen sollte eine Exception geworfen oder exit() aufgerufen werden.
8.4.0 Die Funktion hat nun den Rückgabetyp true statt bool.
8.0.0 Die Funktion wirft nun einen ValueError, wenn ein ungültiges error_level angegeben wird; zuvor gab sie false zurück.

Beispiele

Beispiel #1 trigger_error()-Beispiel

Siehe auch set_error_handler() für ein ausführlicheres Beispiel.

<?php
$password
= $_POST['password'] ?? '';
if (
$password === '') {
trigger_error("Die Verwendung eines leeren Passworts ist unsicher", E_USER_WARNING);
}
$hash = password_hash($password, PASSWORD_DEFAULT);
?>

Anmerkungen

Warnung

Die HTML-Entities in der error_msg werden nicht automatisch maskiert. Wenn die Fehlermeldung in einem Browser ausgegeben werden soll, so sollten Sie diese mit htmlentities() vorverarbeiten.

Siehe auch