Как поймать неопределенные функции с set_error_handler в PHP

Я беру прыжок: мои Сценарии PHP ВСЕ перестанут работать корректно!

По крайней мере, это - то, на что я надеюсь...'

Я не хочу переносить (практически) каждую строку в try...catch операторы, таким образом, я думаю свой лучший выбор, должны сделать пользовательский обработчик ошибок в течение начала моих файлов.

Я проверяю его на странице практики:

function customError($level,$message,$file,$line,$context) {
    echo "Sorry, an error has occured on line $line.<br />";
    echo "The function that caused the error says $message.<br />";
    die();
}

set_error_handler("customError");

echo($imAFakeVariable);

Это хорошо работает, возвращаясь:

Извините, ошибка произошла на строке 17. Функция, которая вызвала ошибку, говорит Неопределенную переменную: imAFakeVariable.

Однако эта установка не работает на неопределенные функции.

function customError($level,$message,$file,$line,$context) {
    echo "Sorry, an error has occured on line $line.<br />";
    echo "The function that caused the error says $message.<br />";
    die();
}

set_error_handler("customError");

imAFakeFunction();

Это возвращается:

Фатальная ошибка: Звоните в неопределенную функцию: imafakefunction () в/Library/WebServer/Documents/experimental/errorhandle.php на строке 17

Почему мой пользовательский обработчик ошибок не ловит неопределенные функции? Есть ли другие проблемы, которые это вызовет?

12
задан Saly 3301 1 October 2019 в 16:03
поделиться