Всякий раз, когда происходит вызов неопределенной функции, ошибки не регистрируются. Вместо этого скрипт просто перестает выполняться. Что еще хуже, если я запускаю php -l filename.php, он показывает, что синтаксических ошибок нет. Я использую пользовательскую функцию обработчика ошибок, но даже первая строка никогда не достигается.
Как заставить его запускать обработчик ошибок при вызове неопределенной функции?
Я использую PHP 5.3.2-1. Вот код, устанавливающий обработчик ошибок:
error_reporting(-1);
$old_error_handler = set_error_handler( "userErrorHandler" );
set_exception_handler('exception_handler');
Ни обработчик ошибок, ни обработчик исключений не достигаются, хотя они работают для других ошибок.
Причина, по которой я хочу этого, заключается в том, что в конечном итоге мне приходится размещать операторы отладки в моем коде, чтобы увидеть, как далеко он продвинется, прежде чем перестанет выполняться, что является медленным процессом по сравнению с сообщением об ошибке, которое укажет мне файл и номер строки, где ошибка .