пример
Установить определенную пользователем функцию обработки ошибок с set_error_handler() функцию, и вызвать ошибку (with trigger_error() ):
<?php
// A user-defined error handler function
function myErrorHandler($errno, $errstr, $errfile, $errline) {
echo "<b>Custom error:</b> [$errno] $errstr<br>";
echo " Error on line $errline in $errfile<br>";
}
// Set user-defined error handler function
set_error_handler("myErrorHandler");
$test=2;
// Trigger error
if ($test>1) {
trigger_error("A custom error has been triggered");
}
?>
Приведенный выше код будет выводить что-то вроде этого:
Custom error: [1024] A custom error has been triggered
Error on line 14 in C:\webfolder\test.php
Определение и использование
set_error_handler() функция устанавливает определенную пользователем функцию обработки ошибок.
Note: Стандартный обработчик PHP ошибки полностью обойдены , если эта функция используется, и определенный пользователем обработчик ошибок должен завершить сценарий, die() , если это необходимо.
Note: При возникновении ошибки до того , как выполняется скрипт обработчик пользовательских ошибок не может быть использован , так как он не зарегистрирован в то время.
Синтаксис
set_error_handler( errorhandler ,E_ALL|E_STRICT) ;
параметр | Описание |
---|---|
errorhandler | Необходимые. Задает имя функции, которая будет работать на ошибки |
E_ALL|E_STRICT | Необязательный. Определяет, на какой уровень отчета об ошибке будут показаны пользователем определенных ошибок. Значение по умолчанию "E_ALL" |
Технические подробности
Возвращаемое значение: | Строка, содержащая ранее заданный обработчик ошибок |
---|---|
PHP версии: | 4.0.1+ |
PHP Changelog: | PHP 5.5: ErrorHandler параметр теперь принимает NULL PHP 5.2: обработчик ошибок должен вернуть FALSE, чтобы заполнить $ php_errormsg |
<PHP Reference Ошибка