trigger_error
(PHP 4 >= 4.0.1, PHP 5, PHP 7, PHP 8)
Generates a user-level error/warning/notice message
Description
Used to trigger a user error condition, it can be used in conjunction with the built-in error handler, or with a user defined function that has been set as the new error handler (set_error_handler()).
This function is useful when you need to generate a particular response to an exception at runtime.
Parameters
messageThe designated error message for this error. It's limited to 1024 bytes in length. Any additional characters beyond 1024 bytes will be truncated.
error_levelThe designated error type for this error. It only works with the
E_USER_*family of constants, and will default toE_USER_NOTICE.WarningPassing
E_USER_ERRORas theerror_levelis now deprecated. Throw anExceptionor callexit()instead.
Return Values
Always
Errors/Exceptions
This function throws a ValueError if error_level is not one of E_USER_ERROR, E_USER_WARNING, E_USER_NOTICE, E_USER_DEPRECATED.
Changelog
| Version | Description |
|---|---|
| 8.4.0 | Passing E_USER_ERROR as the error_level is now deprecated. Throw an Exception or call exit() instead. |
| 8.4.0 | The function now has a return type of true instead of bool. |
| 8.0.0 | The function now throws a ValueError if an invalid error_level is specified. Previously, it returned false. |
Examples
trigger_error() example
See set_error_handler() for a more extensive example.
<?php
$password = $_POST['password'] ?? '';
if ($password === '') {
trigger_error("Using an empty password is unsafe", E_USER_WARNING);
}
$hash = password_hash($password, PASSWORD_DEFAULT);
?>Notes
HTML entities in message are not escaped. Use htmlentities() on the message if the error is to be displayed in a browser.
See Also
error_reporting()set_error_handler()restore_error_handler()- The error level constants
- The
Deprecatedattribute