PHP error_log() Function
Send error messages to the web server’s error log and to a mail account:
// Send error message to the server log if error connecting to the database
if (!mysqli_connect(«localhost»,»bad_user»,»bad_password»,»my_db»)) error_log(«Failed to connect to database!», 0);
>
?php
// Send email to administrator if we run out of FOO
if (!($foo = allocate_new_foo())) error_log(«Oh no! We are out of FOOs!», 1, «admin@example.com»);
>
?>
Definition and Usage
The error_log() function sends an error message to a log, to a file, or to a mail account.
Syntax
Parameter Values
- 0 — Default. Message is sent to PHP’s system logger, using the OS’ system logging mechanism or a file, depending on what the error_log configuration is set to in php.ini
- 1 — Message is sent by email to the address in the destination parameter
- 2 — No longer in use (only available in PHP 3)
- 3 — Message is appended to the file specified in destination
- 4 — Message is sent directly to the SAPI logging handler
Technical Details
Return Value: | TRUE on success. FALSE on failure |
---|---|
PHP Version: | 4.0+ |
Binary Safe: | No |
PHP Changelog: | PHP 5.2.7: The value of 4 was added to the type parameter |
PHP Error Reference
error_log
Отправляет сообщение об ошибке в лог web-сервера или в пользовательский файл.
Список параметров
Сообщение об ошибке которое должно быть логировано.
Определяет куда отправлять ошибку. Возможны следующие значения:
0 | Сообщение message отправляется в системный регистратор PHP, используя механизм логирования операционной системы, или файл, в зависимости от значения директивы error_log в конфигурационном файле. Это значение по умолчанию. |
1 | Сообщение message отправляется электронной почтой на адрес, установленный в параметре destination . Это единственный тип сообщения, где используется четвертый параметр extra_headers . |
2 | Больше не используется. |
3 | message применяется к указанному в destination файлу. Перенос строки автоматически не добавляется в конец message . |
4 | Сообщение message отправляется напрямую в обработчик логера SAPI. |
Назначение. Устанавливается в зависимости от параметра message_type .
Дополнительные заголовки. Используется, когда значение параметра message_type — 1. Данный тип сообщения использует ту же внутреннюю функцию, что и mail() .
Возвращаемые значения
Возвращает TRUE в случае успешного завершения или FALSE в случае возникновения ошибки.
Примечания
error_log() не является бинарнобезопасным. message обрезается по null-символу.
message не должен содержать null-символ. Учтите, что message может передаваться в файл, по почте, в syslog, и т.д.. Используйте подходящую преобразующую или экранирующую функцию, base64_encode() , rawurlencode() или addslashes() перед вызовом error_log() .
Примеры
Пример #1 Примеры использования error_log()
// Отправляет уведомление посредством серверного лога, если мы не можем
// подключиться к базе данных.
if (! Ora_Logon ( $username , $password )) error_log ( «Oracle database not available!» , 0 );
>
?php
// Уведомить администратора электронной почтой, если невозможно выделить ресурсы для FOO
if (!( $foo = allocate_new_foo ())) error_log ( «Big trouble, we’re all out of FOOs!» , 1 ,
«operator@example.com» );
>
// другой способ вызвать error_log():
error_log ( «You messed up!» , 3 , «/var/tmp/my-errors.log» );
?>
Список изменений
Версия | Описание |
---|---|
5.2.7 | Добавлен 4-й тип значения в message_type . |