error_log

(PHP 4, PHP 5, PHP 7)

error_logОтправляет сообщение об ошибке заданному обработчику ошибок

Описание

error_log ( string $message , int $message_type = 0 , string $destination = ? , string $extra_headers = ? ) : bool

Отправляет сообщение об ошибке в лог веб-сервера или в пользовательский файл.

Список параметров

message

Сообщение об ошибке, которое должно быть логировано.

message_type

Определяет куда отправлять ошибку. Возможны следующие значения:

Типы журналов error_log()
0 Сообщение message отправляется в системный регистратор PHP, используя механизм логирования операционной системы, или файл, в зависимости от значения директивы error_log в конфигурационном файле. Это значение по умолчанию.
1 Сообщение message отправляется электронной почтой на адрес, установленный в параметре destination. Это единственный тип сообщения, где используется четвертый параметр extra_headers.
2 Больше не используется.
3 message применяется к указанному в destination файлу. Перенос строки автоматически не добавляется в конец message.
4 Сообщение message отправляется напрямую в обработчик логера SAPI.

destination

Назначение. Устанавливается в зависимости от параметра message_type.

extra_headers

Дополнительные заголовки. Используется, когда значение параметра message_type - 1. Данный тип сообщения использует ту же внутреннюю функцию, что и mail().

Возвращаемые значения

Возвращает true в случае успешного завершения или false в случае возникновения ошибки.

Примечания

Внимание

error_log() не является бинарно-безопасной функцией. message обрезается по null-символу.

Подсказка

message не должен содержать null-символ. Учтите, что message может передаваться в файл, по почте, в syslog и т.д. Используйте подходящую преобразующую или экранирующую функцию, base64_encode(), rawurlencode() или addslashes() перед вызовом error_log().

Примеры

Пример #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");
?>