• Userland code may trigger custom errors
trigger_error( "something went wrong", E_USER_WARNING);
• These errors may be handled with a custom error handler function
function myHandler($code, $text, $file, $line) { if ($code == E_USER_WARNING) { echo 'WARNING: ' . htmlspecialchars($text); return true; } return false; }
• If the custom error handler function returns true, php´s error handling does not kick in
• Custom error handler function needs to be registered using set_error_handler(“myHandler”).
Example
<?php function myErrorHandler($errno, $errstr, $errfile, $errline) { echo "<b>Custom error:</b> [$errno] $errstr<br>"; echo " Error on line $errline in $errfile<br>"; } set_error_handler("myErrorHandler"); $test=2; if ($test>1) { trigger_error("A custom error has been triggered"); } ?>