# error_log

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

error_log — Enviar un mensaje de error a las rutinas de manejo de errores definidas

### Descripción

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

Envía un mensaje de error al registro de errores del servidor web o a un fichero.

### Parámetros

`message`

  El mensaje de error que debería ser registrado.

`message_type`

  Indica dónde debería ir el error. Los tipos de mensaje posibles son:

  Tipos de registro de error_log()
  0 | `message` es enviado al registro del sistema de PHP, usando el mecanismo de registro del Sistema Operativo o un fichero, dependiendo de qué directiva de configuración esté establecida en error_log. Esta opción es la predeterminada.
  1 | `message` es enviado por email a la dirección del parámetro `destination`. Este es el único tipo de mensaje donde se usa el cuarto parámetro `extra_headers`.
  2 | Ya no es una opción.
  3 | `message` es añadido al final del fichero `destination`. No se añade automáticamente una nueva línea al final del string `message`.
  4 | `message` es enviado directamente al gestor de registro de la SAPI.

`destination`

  El destino. Su significado depende del parámetro `message_type` tal como se describió arriba.

`extra_headers`

  Las cabeceras extra. Se usa cuando el parámetro `message_type` está establecido a `1`. Este tipo de mensaje usa la misma función interna que mail().

### Valores devueltos

Devuelve `true` en caso de éxito o `false` en caso de error.

### Notas

Advertencia

error_log() no es seguro a nivel binario. `message` será truncado por un carácter null.

Sugerencia

`message` no debería contener un carácter null. Observe que `message` podría enviarse a un fichero, correo, syslog, etc. Use la función de conversión/escape apropiada, base64_encode(), rawurlencode() o addslashes(), antes de llamar a error_log().

### Ejemplos

Ejemplo #1 Ejemplos de error_log()

`<?php
// Enviar una notificación al registro del servidor si no podemos
// conectarnos a la base de datos.
if (!Ora_Logon($username, $password)) {
error_log("¡La base de datos de Oracle no está disponible!", 0);
}
// Notificar al administrador mediante un email si agotamos FOO
if (!($foo = allocate_new_foo())) {
error_log("Problema serio, nos hemos quedado sin FOOs!", 1,
"operator@example.com");
}
// otra manera de llamar a error_log():
error_log("¡Lo echaste a perder!", 3, "/var/tmp/my-errors.log");
?>`

### Historial de cambios

Versión | Descripción
--- | ---
5.2.7 | El valor posible de 4 se añadió a `message_type`.