PHP Manual
Prev |  | Next

# error_reporting

(PHP 3, PHP 4 )

error_reporting -- set which PHP errors are reported

## Description

int error_reporting ( [int level])

The error_reporting() function sets the error_reporting directive at runtime. PHP has many levels of errors, using this function sets that level for the duration (runtime) of your script.

error_reporting() sets PHP's error reporting level, and returns the old level. The `level` parameter takes on either a bitmask, or named constants. Using named constants is strongly encouraged to ensure compatibility for future versions. As error levels are added, the range of integers increases, so older integer-based error levels will not always behave as expected.

Some example uses:

Example 1. error_reporting() examples

    <?php

    // Turn off all error reporting
    error_reporting(0);

    // Report simple running errors
    error_reporting  (E_ERROR | E_WARNING | E_PARSE);

    // Reporting E_NOTICE can be good too (to report uninitialized
    // variables or catch variable name misspellings ...)
    error_reporting (E_ERROR | E_WARNING | E_PARSE | E_NOTICE);

    // Report all errors except E_NOTICE
    // This is the default value set in php.ini
    error_reporting (E_ALL ^ E_NOTICE);

    // Report all PHP errors (bitwise 63 may be used in PHP 3)
    error_reporting (E_ALL);

    // Same as error_reporting(E_ALL);
    ini_set ('error_reporting', E_ALL);

    ?>

The available error level constants are listed below. The actual meanings of these error levels are described in the predefined constants.

Table 1. error_reporting() level constants and bit values

value | constant
--- | ---
1 | E_ERROR
2 | E_WARNING
4 | E_PARSE
8 | E_NOTICE
16 | E_CORE_ERROR
32 | E_CORE_WARNING
64 | E_COMPILE_ERROR
128 | E_COMPILE_WARNING
256 | E_USER_ERROR
512 | E_USER_WARNING
1024 | E_USER_NOTICE
2047 | E_ALL

See also the display_errors directive and ini_set().

Prev | Home | Next
error_log | Up | restore_error_handler