error_log
(PHP 4, PHP 5, PHP 7, PHP 8)
error_log — Send an error message to the defined error handling routines
Description
string
$message
,int
$message_type
= 0,?string
$destination
= null
,?string
$additional_headers
= null
): bool
Sends an error message to the web server's error log or to a file.
Parameters
-
message
-
The error message that should be logged.
-
message_type
-
Says where the error should go. The possible message types are as follows:
error_log() log types 0 message
is sent to PHP's system logger, using the Operating System's system logging mechanism or a file, depending on what the error_log configuration directive is set to. This is the default option.1 message
is sent by email to the address in thedestination
parameter. This is the only message type where the fourth parameter,additional_headers
is used.2 No longer an option. 3 message
is appended to the filedestination
. A newline is not automatically added to the end of themessage
string.4 message
is sent directly to the SAPI logging handler. -
destination
-
The destination. Its meaning depends on the
message_type
parameter as described above. -
additional_headers
-
The extra headers. It's used when the
message_type
parameter is set to1
. This message type uses the same internal function as mail() does.
Return Values
Returns true
on success or false
on failure.
If message_type
is zero, this function always returns true
,
regardless of whether the error could be logged or not.
Changelog
Version | Description |
---|---|
8.0.0 |
destination and
additional_headers are now nullable.
|
Examples
Example #1 error_log() examples
<?php
// Send notification through the server log if we can not
// connect to the database.
if (!Ora_Logon($username, $password)) {
error_log("Oracle database not available!", 0);
}
// Notify administrator by email if we run out of FOO
if (!($foo = allocate_new_foo())) {
error_log("Big trouble, we're all out of FOOs!", 1,
"operator@example.com");
}
// another way to call error_log():
error_log("You messed up!", 3, "/var/tmp/my-errors.log");
?>
Notes
error_log() is not binary safe. message
will be truncated by null character.
message
should not contain null character. Note that message
may be sent to file, mail, syslog, etc. Use appropriate conversion/escape function, base64_encode(), rawurlencode() or addslashes() before calling error_log().