error_log

(PHP 4, PHP 5, PHP 7, PHP 8)

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

Описание

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

Функция отправляет сообщение об ошибке в журнал ошибок веб-сервера или в файл.

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

message

Сообщение об ошибке, которое требуется записать.

message_type

Определяет, куда отправлять ошибку. Параметр принимает следующие типы сообщений об ошибках:

Типы журналов функции error_log()
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().