<?php
function myErrorHandler($errno, $errstr, $errfile, $errline) {
if ( E_RECOVERABLE_ERROR===$errno ) {
echo "'catched' catchable fatal error\n";
throw new ErrorException($errstr, $errno, 0, $errfile, $errline);
// return true;
}
return false;
}
set_error_handler('myErrorHandler');
try{
$a = new ClassA;
$a->method_a(new ClassWrong);
}
catch(Exception $ex) {
echo "catched\n";
}
echo 'done.';
/*
throw new MyException('This is a really bad error', 123);
final public ExceptionException::getPrevious ( void )
error_reporting(E_ALL);
function exception_error_handler($errno, $errstr, $errfile, $errline ) {
throw new ErrorException($errstr, '00007600', $errno, $errfile, $errline, new Exception('jjj'));
}
set_error_handler("exception_error_handler");
try {
echo $x;
}
catch(Exception $e) {
var_dump($e->getPrevious());
}*/
preferences:
36.86 ms | 402 KiB | 5 Q