46 lines
		
	
	
		
			963 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			963 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| namespace ShortPixel\Controller;
 | |
| 
 | |
| if ( ! defined( 'ABSPATH' ) ) {
 | |
| 	exit; // Exit if accessed directly.
 | |
| }
 | |
| 
 | |
| use ShortPixel\ShortPixelLogger\ShortPixelLogger as Log;
 | |
| 
 | |
| class ErrorController
 | |
| {
 | |
| 
 | |
| 			public function __construct()
 | |
| 			{
 | |
| 
 | |
| 			}
 | |
| 
 | |
| 			public static function start()
 | |
| 			{
 | |
| 					if (true === \wpSPIO()->env()->is_debug)
 | |
| 					{
 | |
| 				 		register_shutdown_function(array(self::class, 'checkErrors'));
 | |
| 					}
 | |
| 			}
 | |
| 
 | |
| 			public static function checkErrors()
 | |
| 			{
 | |
| 				 $error = error_get_last();
 | |
| 
 | |
| 				 // Nothing, happy us.
 | |
| 				 if (is_null($error))
 | |
| 				 {
 | |
| 					  return;
 | |
| 				 }
 | |
| 				 elseif (1 !== $error['type']) // Nothing fatal.
 | |
| 				 {
 | |
| 					  return;
 | |
| 				 }
 | |
| 				 else {
 | |
| 					  ob_clean(); // try to scrub other stuff
 | |
| 				 		echo '<PRE>' . $error['message'] .  ' in ' . $error['file']  . ' on line ' . $error['line'] . '<br> Last Item ID: ' . OptimizeController::getLastId() . '</PRE>';
 | |
| 						exit(' <small><br> -ShortPixel Error Handler- </small>');
 | |
| 				 }
 | |
| 			}
 | |
| }
 |