Home > Article > Backend Development > Detailed explanation of the usage of error_reporting function in php_PHP tutorial
In php, error_reporting is to set the error level of PHP and return the current level. We can set according to different levels whether to not give an error prompt or whether to execute the program when an error occurs outside the domain. Let me introduce the usage and parameters of error_reporting().
Basic information
E_NOTICE means that the normal situation is not recorded, and is only used when the program has an error, such as trying to access a non-existent variable, or calling the stat() function to view a non-existent file.
E_WARNING is usually displayed but does not interrupt program execution. This is useful for debugging. For example: calling ereg() with the regular expression in question.
E_ERROR is usually displayed and will interrupt program execution. This means that memory configuration or other errors cannot be traced using this mask.
E_PARSE Parse error from syntax.
E_CORE_ERROR Like E_ERROR, but excludes errors caused by the PHP core.
E_CORE_WARNING Like E_WARNING, but does not include PHP core error warnings.
Example:
error_reporting = E_ALL & ~E_NOTICE ; Show all errors except reminders
error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR ; Only errors are displayed
error_reporting=E_ERROR: Only fatal errors will be reported
Basically set up
error_reporting = E_ALL & ~E_NOTICE ; Show all errors except reminders
Example
The code is as follows | Copy code | ||||
|
Integer. Represents the error level of old PHP. (Returns the old error_reporting level.)
Example from the manual:
Value | Constant | Description | Note |
---|---|---|---|
1 | E_ERROR (integer) | Fatal run-time errors. These indicate errors that can not be recovered from, such as a memory allocation problem. Execution of the script is halted. | |
2 | E_WARNING (integer) | Run-time warnings (non-fatal errors). Execution of the script is not halted. | |
4 | E_PARSE (integer) | Compile-time parse errors. Parse errors should only be generated by the parser. | |
8 | E_NOTICE (integer) | Run-time notices. Indicate that the script encountered something that could indicate an error, but could also happen in the normal course of running a script. | |
16 | E_CORE_ERROR (integer) | Fatal errors that occur during PHP’s initial startup. This is like an E_ERROR, except it is generated by the core of PHP. | since PHP 4 |
32 | E_CORE_WARNING (integer) | Warnings (non-fatal errors) that occur during PHP’s initial startup. This is like an E_WARNING, except it is generated by the core of PHP. | since PHP 4 |
64 | E_COMPILE_ERROR (integer) | Fatal compile-time errors. This is like an E_ERROR, except it is generated by the Zend Scripting Engine. | since PHP 4 |
128 | E_COMPILE_WARNING (integer) | Compile-time warnings (non-fatal errors). This is like an E_WARNING, except it is generated by the Zend Scripting Engine. | since PHP 4 |
256 | E_USER_ERROR (integer) | User-generated error message. This is like an E_ERROR, except it is generated in PHP code by using the PHP function trigger_error(). | since PHP 4 |
512 | E_USER_WARNING (integer) | User-generated warning message. This is like an E_WARNING, except it is generated in PHP code by using the PHP function trigger_error(). | since PHP 4 |
1024 | E_USER_NOTICE (integer) | User-generated notice message. This is like an E_NOTICE, except it is generated in PHP code by using the PHP function trigger_error(). | since PHP 4 |
2048 | E_STRICT (integer) | Run-time notices. Enable to have PHP suggest changes to your code which will ensure the best interoperability and forward compatibility of your code. | since PHP 5 |
4096 | E_RECOVERABLE_ERROR (integer) | Catchable fatal error. It indicates that a probably dangerous error occured, but did not leave the Engine in an unstable state. If the error is not caught by a user defined handle (see also set_error_handler()), the application aborts as it was an E_ERROR. | since PHP 5.2.0 |
8191 | E_ALL (integer) | All errors and warnings, as supported, except of level E_STRICT in PHP < 6. | 6143 in PHP 5.2.x and 2047 previously |