HomeMenu
Jesus · Bible · HTML · CSS · JS · PHP · SVG · Applications

trigger_error

Description

The trigger_error of Error Handling for PHP generates a user-level error/warning/notice message.

Syntax

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

Parameters

message

The designated error message for this error. It's limited to 1024 bytes in length. Any additional characters beyond 1024 bytes will be truncated.

error_level

The designated error type for this error. It only works with the E_USER_* family of constants, and will default to E_USER_NOTICE.

WARNING: Passing E_USER_ERROR as the error_level is now deprecated. Throw an Exception or call exit() instead.

Return

Returns true.

Examples

1 · message

<?

function myerrorhandler($errno, $errstr, $errfile, $errline)
{
    switch($errno)
    {
        case E_USER_NOTICE:
            echo "NOTICE[$errno] $errstr";
            exit(1);
            break;
    }
    return true;
}

set_error_handler("myerrorhandler");

function divide($numerator, $denominator)
{
    if($denominator == 1)
    {
        trigger_error("unnecessary to divide by one");
    }
    return $numerator / $denominator;
}

echo divide(100, 1);
NOTICE[1024] unnecessary to divide by one

2 · error_level

<?

function myerrorhandler($errno, $errstr, $errfile, $errline)
{
    switch($errno)
    {
        case E_USER_WARNING:
            echo "WARNING[$errno] $errstr";
            exit(1);
            break;
    }
    return true;
}

set_error_handler("myerrorhandler");

function divide($numerator, $denominator)
{
    if($denominator == 0)
    {
        trigger_error("cannot divide by zero", E_USER_WARNING);
    }
    return $numerator / $denominator;
}

echo divide(100, 0);
WARNING[512] cannot divide by zero