(PHP 4, PHP 5, PHP 7, PHP 8)
error_log — Отправляет сообщение об ошибке заданному обработчику ошибок
$message,$message_type = 0,$destination = null,$additional_headers = nullФункция отправляет сообщение об ошибке в журнал ошибок веб-сервера или в файл.
messageСообщение об ошибке, которое требуется записать.
message_typeОпределяет, куда отправлять ошибку. Параметр принимает следующие типы сообщений об ошибках:
| 0 |
Сообщение message отправляется в системный регистратор PHP,
который перенаправляет ошибку в механизм системного логирования операционной системы
или записывает в файл, в зависимости от значения директивы
error_log
в конфигурационном файле. Параметр принимает это значение по умолчанию.
|
| 1 |
Сообщение message отправляется по электронной почте на адрес,
который установили в параметре destination.
Это единственный тип сообщения, который использует четвёртый параметр —
additional_headers.
|
| 2 | Параметр больше не принимает это значение. |
| 3 |
Сообщение message добавляется в файл,
путь к которому указали в параметре destination.
Символ новой строки не добавляется автоматически
в конец строки сообщения message.
|
| 4 |
Сообщение message отправляется непосредственно
в SAPI-обработчик сообщений, которые требуется записать в журнал.
|
destination
Назначение. Значение зависит от параметра
message_type.
additional_headers
Дополнительные заголовки. Функция использует параметр, когда значение
параметра message_type устанавливают равным 1.
Тип сообщения использует ту же внутреннюю функцию, что и
функция mail().
Функция возвращает true, если выполнилась успешно, или false, если возникла ошибка.
Функция возвращает логическое значение true
независимо от результата логирования ошибки,
если тип сообщения message_type равен 0.
| Версия | Описание |
|---|---|
| 8.0.0 |
Параметры destination
и additional_headers теперь принимают значение null.
|
Пример #1 Примеры использования функции error_log()
<?php
// Отправляет уведомление через лог сервера, если не получается
// подключиться к базе данных
if (!Ora_Logon($username, $password)) {
error_log("База данных Oracle недоступна!", 0);
}
// Уведомляет администратора по электронной почте, если закончились FOO
if (!($foo = allocate_new_foo())) {
error_log("Большая беда, у нас закончились FOO!", 1,
"operator@example.com");
}
// Другой способ вызвать функцию error_log():
error_log("Вы ошиблись!", 3, "/var/tmp/my-errors.log");
?>
Функция error_log() не бинарно-безопасна.
Сообщение message обрезается по null-символу.
Параметру message нельзя содержать null-символ.
Обратите внимание, сообщение message разрешается отправлять в файл,
по почте, в syslog и т. д. Перед вызовом функции error_log()
сообщение преобразовывают или экранируют функциями, которые соответствуют типу сообщения:
base64_encode(), rawurlencode()
или addslashes().