PHP Manual
Prev |  | Next

# error_reporting

(PHP 3 <= 3.0.18, PHP 4 >= 4.0.0)

error_reporting -- set which PHP errors are reported

## Description

``int error_reporting` ([int level])`

Sets PHP's error reporting level and returns the old level. The error reporting level is either a bitmask, or named constant. 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.

Example 1. Error Integer changes
    error_reporting (55);   // PHP 3 equivalent to E_ALL ^ E_NOTICE

    /* ...in PHP 4, '55' would mean (E_ERROR | E_WARNING | E_PARSE |
    E_CORE_ERROR | E_CORE_WARNING) */

    error_reporting (2039); // PHP 4 equivalent to E_ALL ^ E_NOTICE

    error_reporting (E_ALL ^ E_NOTICE); // The same in both PHP 3 and 4

Follow the links for the internal values to get their meanings:

Table 1. error_reporting() bit values

constant | value
--- | ---
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

Example 2. error_reporting() examples
    error_reporting(0);
    /* Turn off all reporting */

    error_reporting (7); // Old syntax, PHP 2/3
    error_reporting  (E_ERROR | E_WARNING | E_PARSE); // New syntax for PHP 3/4
    /* Good to use for simple running errors  */

    error_reporting  (15); // Old syntax, PHP 2/3
    error_reporting (E_ERROR | E_WARNING | E_PARSE | E_NOTICE); // New syntax for PHP 3/4
    /*  good for code authoring to report uninitialized or (possibly mis-spelled) variables */

    error_reporting (63); // Old syntax, PHP 2/3
    error_reporting (E_ALL); // New syntax for PHP 3/4
    /* report all PHP errors */

Prev | Home | Next
error_log | Up | restore_error_handler