Skip to content

Instantly share code, notes, and snippets.

@houssemz
Last active June 21, 2018 15:01
Show Gist options
  • Save houssemz/4618bcc2e72272598e1eaacd4f7d3c69 to your computer and use it in GitHub Desktop.
Save houssemz/4618bcc2e72272598e1eaacd4f7d3c69 to your computer and use it in GitHub Desktop.

Error handling

Predefined constants :

Default errors :

Value Constant Description
1 E_ERROR Fatal run-time errors. Execution of the script is halt.
2 E_WARNING Run-time warnings. Execution of the the script is not halted.
4 E_PARSE Compile-time errors. Should only be generated by the parser.
8 E_NOTICE 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.

Core errors :

Value Constant Description
16 E_CORE_ERROR Fatal errors that occur during PHP's initial startup. This is like an E_ERROR, except it is generated by the core of PHP.
32 E_CORE_WARNING 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.
64 E_COMPILE_CORE Fatal compile-time errors. This is like an E_ERROR, except it is generated by the Zend Scripting Engine.
128 E_COMPILE_WARNING Compile-time warnings (non-fatal errors). This is like E_WARNING but it is generated buy the Zend Engine.

User-generated errors :

Value Constant Description
256 E_USER_ERROR User-generated error message. This is like an E_ERROR, except it is generated in PHP code by using the PHP function trigger_error().
512 E_USER_WARNING User-generated warning message. This is like an E_WARNING, except it is generated in PHP code by using the PHP function trigger_error().
1024 E_USER_NOTICE User-generated notice message. This is like an E_WARNING, except it is generated in PHP code by using the PHP function trigger_error().

Other errors :

Value Constant Description
2048 E_STRICT Enable to have PHP suggest changes to your code wich will ensure the best interoperability and forward compatiblity of your code.
4096 E_RECOVERABLE_ERROR Catchable fatal error. It indicates that a probably dangerous error occurred, 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.
8192 E_DEPRECATED Run-time notices. Enable this to receive warnings about code that will not work in future versions.
16384 E_USER_DEPRECATED User-generated warning message. This is like an E_DEPRECATED, except it is generated in PHP code by using the PHP function trigger_error().
2767 E_ALL All errors and warnings, as supported, except of level E_STRICT.
@houssemz
Copy link
Author

E_STRICT with the value 2048 when enabled, messages will be issued to warn you about code usage which is deprecated or which may not be future-proof.
E_ALL does not include E_STRICT, so it's not enabled by default. You must explicitly set the error reporting level to include E_STRICT in order to see these messages.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment