Você também pode definir seu manipulador de erros como uma função anônima que chama uma exceção e usar uma tentativa / captura nessa exceção.
set_error_handler(
function ($severity, $message, $file, $line) {
throw new ErrorException($message, $severity, $severity, $file, $line);
}
);
try {
file_get_contents('www.google.com');
}
catch (Exception $e) {
echo $e->getMessage();
}
restore_error_handler();
Parece um monte de código para capturar um pequeno erro, mas se você estiver usando exceções em todo o aplicativo, será necessário fazer isso apenas uma vez, na parte superior (em um arquivo de configuração incluído, por exemplo), e será converta todos os seus erros em exceções por toda parte.