Everyone here should know the \'or\' statemens, usually glued to an die() command:
$foo = bar() or die(\'Error: bar function return false.\');
A solution I found that can replace "or die()" everywhere is to wrap the throw with a anonymous function that gets called immediately by call_user_func:
call_user_func(function(){
throw new Exception("ERROR");
});
You can see that it works by executing this on a dummy script:
false or call_user_func(function(){throw new Exception("ERROR");});