<?php
class ExceptionHandler
{
public function __construct()
{
set_exception_handler($this);
}
public function __invoke(Exception $e)
{
echo $exception->getMessage();
}
}
new ExceptionHandler;
throw new Exception("Test");
Warning: Undefined variable $exception in /in/Qt2bB on line 12
Fatal error: Uncaught Error: Call to a member function getMessage() on null in /in/Qt2bB:12
Stack trace:
#0 [internal function]: ExceptionHandler->__invoke(Object(Exception))
#1 {main}
thrown in /in/Qt2bB on line 12
Process exited with code 255.
Notice: Undefined variable: exception in /in/Qt2bB on line 12
Fatal error: Uncaught Error: Call to a member function getMessage() on null in /in/Qt2bB:12
Stack trace:
#0 [internal function]: ExceptionHandler->__invoke(Object(Exception))
#1 {main}
thrown in /in/Qt2bB on line 12
Process exited with code 255.
Output for 7.3.32 - 7.3.33
Fatal error: Uncaught Error: Call to a member function getMessage() on null in /in/Qt2bB:12
Stack trace:
#0 [internal function]: ExceptionHandler->__invoke(Object(Exception))
#1 {main}
thrown in /in/Qt2bB on line 12
Process exited with code 255.
Output for 7.0.0 - 7.0.4
Notice: Undefined variable: exception in /in/Qt2bB on line 12
Fatal error: Uncaught Error: Call to a member function getMessage() on unknown in /in/Qt2bB:12
Stack trace:
#0 [internal function]: ExceptionHandler->__invoke(Object(Exception))
#1 {main}
thrown in /in/Qt2bB on line 12
Process exited with code 255.
Output for 5.6.0 - 5.6.28
Notice: Undefined variable: exception in /in/Qt2bB on line 12
Fatal error: Call to a member function getMessage() on null in /in/Qt2bB on line 12
Process exited with code 255.
Notice: Undefined variable: exception in /in/Qt2bB on line 12
Fatal error: Call to a member function getMessage() on a non-object in /in/Qt2bB on line 12
Process exited with code 255.
Output for 5.2.0 - 5.2.17
Catchable fatal error: Object of class ExceptionHandler could not be converted to string in /in/Qt2bB on line 7
Process exited with code 255.
Output for 5.0.0 - 5.0.2, 5.0.5, 5.1.0 - 5.1.6
Warning: set_exception_handler() expects the argument (Object id #1) to be a valid callback in /in/Qt2bB on line 7
Fatal error: Uncaught exception 'Exception' with message 'Test' in /in/Qt2bB:18
Stack trace:
#0 {main}
thrown in /in/Qt2bB on line 18
Process exited with code 255.
Output for 5.0.3 - 5.0.4
Warning: set_exception_handler() expects the argument (Object id #1) to be a valid callback in /in/Qt2bB on line 7
Fatal error: Uncaught exception 'Exception' with message 'Test' in /in/Qt2bB:18
Stack trace:
#0 /in/Qt2bB(18): unknown()
#1 {main}
thrown in /in/Qt2bB on line 18
Process exited with code 255.
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/Qt2bB on line 5
Process exited with code 255.
Parse error: parse error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/Qt2bB on line 5
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error, expecting `T_OLD_FUNCTION' or `T_FUNCTION' or `T_VAR' or `'}'' in /in/Qt2bB on line 5
Process exited with code 255.