Функции ошибок и журналирования PHP
- Предыдущая страница PHP Directory
- Следующая страница PHP Filesystem
PHP Error 简介
Функции Error и Logging позволяют вам обрабатывать и записывать ошибки.
Функция Error позволяет пользователям определить правила обработки ошибок и изменить способ записи ошибок.
Функция logging позволяет пользователям вести日志 в приложении и отправлять сообщения日志 по электронной почте, в системный журнал или на другие машины.
Функция error используется для выполнения обработки ошибок и журналирования.
Функция error позволяет нам определить свои правила обработки ошибок и изменить способ записи ошибок.
Функция logging позволяет нам напрямую отправлять сообщения на другие машины, по электронной почте или в системный журнал.
Функция error reporting позволяет нам определить тип и уровень ошибок.
Установка
Функция error является частью ядра PHP. Эти функции могут быть использованы без установки.
Конфигурация времени выполнения
Поведение функции error зависит от настроек, установленных в php.ini.
Конфигурационные параметры ошибок и журналирования такие как: error
Название | Стандартное значение | Описание | Доступные значения |
---|---|---|---|
error_reporting | NULL | Установите уровень отчета об ошибках (целое число или именованный константа). | PHP_INI_ALL |
display_errors | "1" |
Определяет, будет ли ошибка выводиться на экран или скрываться от пользователя. Внимание:Эта функция не должна использоваться в производственных системах (поддерживается только для разработки). |
PHP_INI_ALL |
display_startup_errors | "0" |
Даже если display_errors установлен в режим "включен", ошибки, возникающие в процессе запуска PHP, не будут отображаться. Комментарий: Настоятельно рекомендуется установить display_startup_errors в режим "отключен", кроме целей отладки. |
PHP_INI_ALL |
log_errors | "0" |
Установите, будет ли информация об ошибках, возникших при выполнении скрипта, записываться в серверный журнал ошибок или error_log. Комментарий: Это конфигурационное значение, связанное с сервером. Комментарий: В производственных системах настоятельно рекомендуется использовать журнал ошибок для записи информации об ошибках, отображаемых на веб-сайте. |
PHP_INI_ALL |
log_errors_max_len | "1024" |
Установите максимальное количество байтов для log_errors. В error_log будет добавлена информация о源头 ошибки. Стандартное значение 1024, если установлено 0, длина не ограничивается. Этот параметр ограничивает длину записанных ошибок, отображаемых ошибок и переменной $php_errormsg. |
PHP_INI_ALL |
ignore_repeated_errors | "0" |
Определение, должны ли записываться повторяющиеся сообщения об ошибках. Повторяющиеся ошибки должны появляться на одном и том же файле и в одном и том же строке кода, если только не установлено ignore_repeated_source в true. |
PHP_INI_ALL |
ignore_repeated_source | "0" |
Определение, должны ли записываться повторяющиеся сообщения об ошибках. При игнорировании повторяющихся сообщений также игнорируется их источник. Когда это настройка включена, повторяющиеся сообщения не будут записываться, несмотря на то, были ли они сгенерированы из разных файлов или из разных строк исходного кода. |
PHP_INI_ALL |
report_memleaks | "1" | Если параметр установлен в On (по умолчанию), то будут отображаться отчеты о утечках памяти, обнаруженных управлением памятью Zend. | PHP_INI_ALL |
track_errors | "0" | Если включено, последняя ошибка всегда будет存在于 переменной $php_errormsg. | PHP_INI_ALL |
html_errors | "1" | Отключение HTML-тегов в информации об ошибках. |
|
xmlrpc_errors | "0" | Если включено, то отключается нормальное сообщение об ошибках, и формат ошибки устанавливается в формат информации об ошибках XML-RPC. | PHP_INI_SYSTEM |
xmlrpc_error_number | "0" | Используется в качестве значения элемента faultCode в XML-RPC. | PHP_INI_ALL |
docref_root | "" | (доступно с PHP 4.3) | PHP_INI_ALL |
docref_ext | "" | (доступно с PHP 4.3.2) | PHP_INI_ALL |
error_prepend_string | NULL | Определение строки, которая будет выведена перед информацией об ошибке. | PHP_INI_ALL |
error_append_string | NULL | Определение строки, которая будет выведена после информации об ошибке. | PHP_INI_ALL |
error_log | NULL |
Настройка файла, в который будут записываться ошибки скрипта. Этот файл должен быть доступен для записи пользователю веб-сервера. Если используется особое значение syslog, то информация об ошибках будет отправлена в системный журнал. |
PHP_INI_ALL |
Функции ошибок и журналирования PHP
Функция | Описание |
---|---|
debug_backtrace() | Генерация backtrace. |
debug_print_backtrace() | Печать backtrace. |
error_get_last() | Возврат последней произошедшей ошибки. |
error_log() | Отправка сообщения об ошибке на сервер, файл или удаленную цель. |
error_reporting() | Определение,哪个 ошибка будет сообщена. |
restore_error_handler() | Восстановление прежней программы обработки ошибок. |
restore_exception_handler() | Восстановление прежней функции обработки исключений. |
set_error_handler() | Настройка пользовательской функции обработки ошибок. |
set_exception_handler() | Настройка пользовательской функции обработки исключений. |
trigger_error() | Создание ошибок уровня пользователя. |
user_error() | Альтернативное имя trigger_error(). |
П预制енные ошибки и константы журнала PHP 5
Значение | Константа | Описание |
---|---|---|
1 | E_ERROR | Смертельные ошибки во время выполнения. Некорректируемые ошибки. Останавливают выполнение скрипта. |
2 | E_WARNING | Не смертельные ошибки во время выполнения. Не останавливают выполнение скрипта. |
4 | E_PARSE | Синтаксические ошибки при компиляции. Ошибки анализатора. |
8 | E_NOTICE | Уведомления во время выполнения. Показывают ситуации, которые могут проявляться как ошибки, но могут также присутствовать в работающем скрипте. |
16 | E_CORE_ERROR | Смертельные ошибки в процессе инициализации PHP. Ошибки аналогичны E_ERROR, но созданные ядром PHP. |
32 | E_CORE_WARNING | Предупреждения в процессе инициализации PHP (не смертельные ошибки). Аналогично E_WARNING, но созданные ядром PHP. |
64 | E_COMPILE_ERROR | Смертельные ошибки при компиляции. Аналогично E_ERROR, но созданные движком Zend. |
128 | E_COMPILE_WARNING | Предупреждения при компиляции (не смертельные ошибки). Аналогично E_WARNING, но созданные движком Zend. |
256 | E_USER_ERROR | Ошибки, созданные пользователем. Аналогично E_ERROR, но созданные пользователем с использованием функции PHP trigger_error(). |
512 | E_USER_WARNING | Уведомления, созданные пользователем. Аналогично E_WARNING, но созданные пользователем с использованием функции PHP trigger_error(). |
1024 | E_USER_NOTICE | Уведомления, созданные пользователем. Аналогично E_NOTICE, но созданные пользователем с использованием функции PHP trigger_error(). |
2048 | E_STRICT | Включите рекомендацию PHP по модификации кода, чтобы обеспечить наилучшую совместимость и обратную совместимость. |
4096 | E_RECOVERABLE_ERROR | Заблудившиеся ошибки, которые могут быть捕获ены. Это означает, что произошла потенциально опасная ошибка, но PHP-движок все еще стабилен. Если ошибка не была捕获 обработчиком ошибок пользователя (см. set_error_handler()), она станет E_ERROR, и скрипт прекратит работу. |
8192 | E_DEPRECATED | Уведомления в режиме выполнения. После включения будут предоставляться предупреждения о коде, который может не работать в будущих версиях. |
16384 | E_USER_DEPRECATED | Предупреждения, созданные пользователями. Аналогичны E_DEPRECATED, но создаются пользователем с помощью функции PHP trigger_error() в коде. |
32767 | E_ALL | E_STRICT все ошибки и сообщения об ошибках, кроме тех, которые должны быть обработаны явно. |
- Предыдущая страница PHP Directory
- Следующая страница PHP Filesystem