It's my understanding, per http://php.net/manual/en/language.errors.php7.php, that errors in PHP7 are now supposed to be thrown. But in my own testing this does not seem to be the case:
<?php
error_reporting(E_ALL);
try {
echo $a[4];
} catch (Throwable $e) {
echo "caught\n";
}
echo "all done!\n";
In that case I'd expect "caught" to be echo'd out and then the script to say "all done!". Instead I get this:
Notice: Undefined variable: a in C:\games\test-ssh3.php on line 12
all done!
Am I misunderstanding something?