PHP set_error_handler() function
Example
Through the set_error_handler() function, set a user-defined error handler, and then trigger an error (using trigger_error()):
<?php // 用户定义的错误处理函数 function myErrorHandler($errno, $errstr, $errfile, $errline) { echo "<b>Custom error:</b> [$errno] $errstr<br>"; echo " Error on line $errline in $errfile<br>"; } // 设置用户定义的错误处理函数 set_error_handler("myErrorHandler"); $test=2; // 触发错误 if ($test>1) { trigger_error("A custom error has been triggered"); } $test=2;
// Триггер ошибки
if ($test>1) { trigger_error("Пользовательская ошибка была активирована");
}
?>
Пользовательская ошибка: [1024] Пользовательская ошибка была активированаВывод кода будет подобен этому:
Пользовательская ошибка: [1024] Пользовательская ошибка была активированаОшибка на строке 14 в C:\webfolder\test.php
Грамматика
set_error_handler(errorhandler,E_ALL|E_STRICT);
Параметры | Описание |
---|---|
errorhandler | Обязателен. Определяет имя функции обработки ошибок пользователя. |
E_ALL|E_STRICT | Опционально. Определяет,何种级别的错误报告级别的用户-defined ошибка будет отображаться. По умолчанию это "E_ALL". |
Технические детали
Возвратное значение: | Строка, содержащая ранее определенную программу обработки ошибок. |
---|---|
Версия PHP: | 4.0.1+ |
Журнал обновлений PHP: |
PHP 5.5: Параметры errorhandler Теперь принимает NULL PHP 5.2: Программа обработки ошибок должна возвращать FALSE для отображения $php_errormsg. |