/var/www/enzatesting.onesolution.hk/01_20240711_full_backup/inc/fatalHandler.php


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php

register_shutdown_function
('__fatalHandler');
function 
__fatalHandler()
{
    
$error      error_get_last();

    
//check if it's a core/fatal error, otherwise it's a normal shutdown
    
if($error !== NULL && $error['type'] === E_ERROR) {
        
//Bit hackish, but the set_exception_handler will return the old handler
        
function fakeHandler() { }
        
$handler set_exception_handler('fakeHandler');
        
restore_exception_handler();
        if(
$handler !== null) { 
            
call_user_func($handler, new ErrorException($error['message'], $error['type'], 0$error['file'], $error['line']));
        }
        print 
'Fatal Error:'$error['message'];
        exit;
    }
}