Erros no PHP 7
O PHP 7 modificou como a maioria dos erros são reportados pelo PHP. Em vez de reportá-los através do mecanismo tradicional de reporte de erros utilizado pelo PHP 5, a maioria dos erros, agora são reportados lançando exceções Error
Assim como exceções normais, as exceções Error
serão elevadas até alcançarem o primeiro bloco
catch
correspondente. Se não existir nenhum bloco correspondente, qualquer manipulador de exceção padrão
instalado com a função set_exception_handler() será chamado,
e se não existir nenhum manipulador padrão de exceção, a exceção será
convertida em um erro fatal e tratada como um erro tradicional.
Já que a hierarquia de Error não herda de
Exception, códigos que utilizam blocos
catch (Exception $e) { ... }
para manipular exceções que não foram
capturadas no PHP 5, descobrirão que estes Errors não
são capturados por estes blocos. Um bloco catch (Error $e) { ... }
,
ou um manipulador definido com a função set_exception_handler() será necessário.