Это возможно с пользовательской функцией ошибки.
//Custom error function (even triggers for warnings)
set_error_handler(function($severity, $message, $file, $line) {
if (error_reporting() & $severity) {
throw new ErrorException($message, 0, $severity, $file, $line);
}
});
В проекте, в котором я использую этот код, я сделал эту маленькую вспомогательную функцию для переключения в разных частях проекта:
function updateErrorHandling($state) {
//custom error handler or standard
if ($state > 1) {
//Custom error function (even triggers for warnings)
set_error_handler(function($severity, $message, $file, $line) {
if (error_reporting() & $severity) {
throw new ErrorException($message, 0, $severity, $file, $line);
}
});
} else {
//Standard Exception Handling on / off
ini_set('display_errors', $state);
ini_set('display_startup_errors', $state);
error_reporting($state == 1 ? E_ALL : 0);
}
}