These are tasks that deal with error handling and logging. They allow you to define your own bug management rules, and change the way errors can creep in. This allows you to modify and upgrade an error report to suit your needs.
Syntax
error_function(error_level,error_message, error_file,error_line,error_context);
Example
define your own bug management rules
<?php
error_reporting( E_ERROR );
function handleError($errno, $errstr,$error_file,$error_line) {
echo "Error: [$errno] $errstr - $error_file:$error_line";
echo "Terminating PHP Script";
die();
}
//set error handler
set_error_handler("handleError");
//trigger error
myFunction();
?>
Predefined
These error reporting levels are the various types of error a user-defined handle can be used for. These cabinet values are grouped by using operator
The constants below are always available as part of the PHP core.
Value | Constant | Description |
---|---|---|
1 |
E_ERROR
(int)
|
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
(int)
|
Run-time warnings (non-fatal errors). Execution of the script is not halted. |
4 |
E_PARSE
(int)
|
Compile-time parse errors. Parse errors should only be generated by the parser. |
8 |
E_NOTICE
(int)
|
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
(int)
|
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
(int)
|
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_ERROR
(int)
|
Fatal compile-time errors. This is like an E_ERROR ,
except it is generated by the Zend Scripting Engine.
|
128 |
E_COMPILE_WARNING
(int)
|
Compile-time warnings (non-fatal errors). This is like an
E_WARNING , except it is generated by the Zend
Scripting Engine.
|
256 |
E_USER_ERROR
(int)
|
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
(int)
|
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
(int)
|
User-generated notice message. This is like an
E_NOTICE , except it is generated in PHP code by
using the PHP function trigger_error().
|
2048 |
E_STRICT
(int)
|
Enable to have PHP suggest changes to your code which will ensure the best interoperability and forward compatibility of your code. |
4096 |
E_RECOVERABLE_ERROR
(int)
|
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
(int)
|
Run-time notices. Enable this to receive warnings about code that will not work in future versions. |
16384 |
E_USER_DEPRECATED
(int)
|
User-generated warning message. This is like an
E_DEPRECATED , except it is generated in PHP code by
using the PHP function trigger_error().
|
32767 |
E_ALL
(int)
|
All errors and warnings, as supported, except of level
E_STRICT prior to PHP 5.4.0.
|
Using die() function
When writing your PHP program you should check the entire error state before proceeding to take appropriate action where necessary.
<?php
if(!file_exists("/tmp/test.txt")) {
die("File not found");
}else {
$file = fopen("/tmp/test.txt","r");
print "Opend file sucessfully";
}
// Test of the code here.
?>