PHP - Function error_log()



bool error_log ( string $message [, 
                 int $message_type [, 
                 string $destination [, 
                 string $extra_headers]]] )

Definition and Usage

Sends an error message to the web server's error log, a TCP port or to a file.


messageThe error message that should be logged.
message_typeSays where the error should go. The possible message types are as follows:
  • 0 - Default. The error is sent to the servers logging system or a file, depending on how the error_log configuration is set in the php.ini file
  • 1 - The error is sent by email to the address in the destination parameter. This message type is the only one that uses the headers parameter
  • 2 - The error is sent through the PHP debugging connection. This option is only available in PHP 3
  • 3 - The error is added to the file destination string
estinationThe destination. Its meaning depends on the message_type parameter as described above.
extra_headersThe extra headers. It's used when the message_type parameter is set to 1. This message type uses the same internal function as mail() does.

Return Value

Returns TRUE on success or FALSE on failure.


Following is the usage of this function:

// Send notification through the server log file 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,

// other ways of calling error_log():
error_log("You messed up!", 2, "");
error_log("You messed up!", 2, "loghost");
error_log("You messed up!", 3, "/var/tmp/my-errors.log");