JavaScript Editor Javascript debugger     Website design 


Sets which PHP errors are reported (PHP 4, PHP 5)
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.



The new error_reporting level. It 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.

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

Table 84. error_reporting() level constants and bit values

Return Values

Returns the old error_reporting level.


5.0.0E_STRICT introduced (not part of E_ALL).
5.2.0E_RECOVERABLE_ERROR introduced.
6E_STRICT became part of E_ALL.


Example 594. error_reporting() examples


// Turn off all error reporting

// 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)

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




Most of E_STRICT errors are evaluated at the compile time thus such errors are not reported in the file where error_reporting is enhanced to include E_STRICT errors (and vice versa).

See Also
The display_errors directive