PHP Введение Ошибка
Функции ошибок используются для решения с обработкой ошибок и протоколирования.
Функции ошибок позволяют определить собственные правила обработки ошибок, а также изменить способ ошибок могут быть авторизованы.
Функции протоколирования позволяют отправлять сообщения непосредственно на другие машины, электронные письма, или системные журналы.
Функции отчетности ошибок позволяют настроить, какой уровень и тип обратной связи по ошибкам дается.
Монтаж
Функции PHP ошибки являются частью ядра PHP. Установка не требуется, чтобы использовать эти функции.
Настройка во время выполнения
Поведение функций ошибок зависит от установок в php.ini.
Ошибки и параметры конфигурации регистрации:
имя | По умолчанию | Описание | Сменный |
---|---|---|---|
Отчет об ошибках | НОЛЬ | Устанавливает уровень сообщений об ошибках (целое число или именованные константы) | 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 в байтах. Значение "0" может быть использовано не применять какую - либо максимальную длину на всех. Эта длина применяется для зарегистрированных ошибок, отображаются ошибки, а также $ php_errormsg (available since PHP 4.3) | PHP_INI_ALL |
ignore_repeated_errors | "0" | Определяет, будет ли регистрироваться повторяющиеся сообщения об ошибках. Если установлено значение "1" он не будет ошибки с повторяющимися ошибками из того же файла на ту же строку , журнал (available since PHP 4.3) | PHP_INI_ALL |
ignore_repeated_source | "0" | Определяет, будет ли регистрироваться повторяющиеся сообщения об ошибках. Если установлено значение "1" он не будет ошибки с повторяющимися ошибками из разных файлов или исходные линии входа (available since PHP 4.3) | PHP_INI_ALL |
report_memleaks | "1" | Если установлено значение "1" (the default) , то этот параметр показывает отчет утечек памяти , обнаруженных менеджером памяти Zend (available since PHP 4.3) | PHP_INI_ALL |
track_errors | "0" | Если установлено значение "1" , то сообщение об ошибке последней всегда будет присутствовать в переменной $ php_errormsg | PHP_INI_ALL |
html_errors | "1" | Выключает HTML-теги в сообщениях об ошибках | PHP_INI_ALL PHP_INI_SYSTEM в PHP <= 4.2.3. |
xmlrpc_errors | "0" | Выключает нормальную отчетность и форматы ошибки ошибка , как сообщение об ошибке XML-RPC (available since PHP 4.1) | PHP_INI_SYSTEM |
xmlrpc_error_number | "0" | Используется в качестве значения элемента XML-RPC faultCode (available since PHP 4.1) | PHP_INI_ALL |
docref_root | «» | (Доступно с PHP 4.3) | PHP_INI_ALL |
docref_ext | «» | (Доступно с PHP 4.3.2) | PHP_INI_ALL |
error_prepend_string | НОЛЬ | Задает строку для вывода перед тем сообщением об ошибке | PHP_INI_ALL |
error_append_string | НОЛЬ | Задает строку для вывода после того, как сообщение об ошибке | PHP_INI_ALL |
журнал ошибок | НОЛЬ | Задает имя файла, где ошибки сценария должны быть зарегистрированы. Файл должен быть доступен для записи пользователем веб-сервера. Если специальное значение системного журнала используется, ошибки отправляются в системный журнал вместо | PHP_INI_ALL |
PHP ошибки и ведение журнала Функция
функция | Описание |
---|---|
debug_backtrace() | Формирует трассировку |
debug_print_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 | Запуск времени предупреждения (non-fatal errors) . Выполнение скрипта не остановлено |
4 | E_PARSE | Время компиляции ошибки разбора. 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 Scripting Engine |
128 | E_COMPILE_WARNING | Нефатальные ошибки времени компиляции. Это как E_WARNING, за исключением того, что оно генерируется с помощью Zend Scripting Engine |
256 | E_USER_ERROR | Фатальные пользователи ошибка. Это как E_ERROR, за исключением того, что оно генерируется в PHP код с помощью функции PHP trigger_error() |
512 | E_USER_WARNING | Некритические пользователи предупреждение. Это как E_WARNING, за исключением того, что оно генерируется в PHP код с помощью функции PHP trigger_error() |
1024 | E_USER_NOTICE | Пользователь сгенерированные уведомления. Это как E_NOTICE, за исключением того, что оно генерируется в PHP код с помощью функции PHP trigger_error() |
2048 | E_STRICT | Включить, чтобы иметь PHP предложить изменения в свой код, который обеспечит наилучшую совместимость и вперед совместимость вашего кода (Начиная с PHP 5, но не включены в E_ALL до PHP 5.4) |
4096 | E_RECOVERABLE_ERROR | Catchable фатальная ошибка. Указывает, что произошла ошибка, вероятно, опасно, но не оставил двигатель в нестабильном состоянии. Если ошибка не захватываются определенным пользователем ручкой, приложение прерывается , как это было E_ERROR (Since PHP 5.2) |
8192 | E_DEPRECATED | Время выполнения уведомление. Включите эту опцию , чтобы получать предупреждения о том, что код не будет работать в будущих версиях (Since PHP 5.3) |
16384 | E_USER_DEPRECATED | Созданное пользователем предупреждающее сообщение. Это как E_DEPRECATED, за исключением того, что оно генерируется в PHP коде, используя функцию РНР trigger_error() (Начиная с PHP 5.3) |
32767 | E_ALL | Включить все ошибки PHP и предупреждение (except E_STRICT in versions < 5.4) |