Catch Fatal Errors in PHP

  • Avinash
  • 5
  • Jan 28, 2013
  • Tips & Tricks

In this tutorial we will see how to catch the fatal errors in PHP. Normally we can’t cache FATAL Error because those are FATAL.

This will be useful when you want to show specific well formatted error page rather than PHP Error, when your program ends unexpectedly due to some fatal errors.

We will use register_shutdown_function function to catch the fatal errors and format as we need.

Keep in mind that register_shutdown_function will gets executed after your script execution ends either it is successful or ends with any error.

So before performing any action in this function we need to check if really any fatal occurs or not. If occurs then we will show error page else it will continue to run as it is. So to get the details of the last error we will use error_get_last() function.

Code

function catch_fatal_error() { // Getting Last Error $last_error = error_get_last(); // Check if Last error is of type FATAL if(isset($last_error['type']) && $last_error['type']==E_ERROR) { // Fatal Error Occurs // Do whatever you want for FATAL Errors } } register_shutdown_function('catch_fatal_error');
function catch_fatal_error()
{
  // Getting Last Error
  $last_error =  error_get_last();
 
  // Check if Last error is of type FATAL
  if(isset($last_error['type']) && $last_error['type']==E_ERROR)
  {  
    // Fatal Error Occurs
    // Do whatever you want for FATAL Errors
  }

}
register_shutdown_function('catch_fatal_error');

Related Posts

Written by Avinash

Avinash Zala is leading various projects which deals with the various technology involved with the web. A combination of perfect technical and management skills. Avinash would like to chat with you and convert your imagination into the working system. You can get in touch with him on Facebook and Twitter.

View all posts by: