# error_log

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

error_log — Envoi un message d'erreur vers le gestionnaire d'erreurs défini

### Description

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

Envoie un message d'erreur à l'historique d'erreur du serveur web ou à un fichier.

### Liste de paramètres

`message`

  Le message d'erreur qui doit être stocké.

`message_type`

  Spécifie la destination du message d'erreur. Les types possibles de messages sont :

  error_log() log types
  0 | `message` est envoyé à l'historique PHP, qui est basé sur l'historique système ou un fichier, en fonction de la configuration de error_log. C'est l'option par défaut.
  1 | `message` est envoyé par email à l'adresse `destination`. C'est le seul type qui utilise le quatrième paramètre `additional_headers`.
  2 | N'est plus une option.
  3 | `message` est ajouté au fichier `destination`. Aucune nouvelle ligne (retour chariot) n'est automatiquement ajoutée à la fin de la chaîne `message`.
  4 | `message` est envoyé directement au gestionnaire d'identification SAPI.

`destination`

  La destination. Cela dépend du paramètre `message_type` décrit ci-dessus.

`additional_headers`

  Les en-têtes supplémentaires. Ils sont utilisés lorsque le paramètre `message_type` est défini à `1`. Ce type de message utilise la même fonction interne que la fonction mail().

### Valeurs de retour

Cette fonction retourne `true` en cas de succès ou `false` si une erreur survient. Si `message_type` est zéro, alors cette fonction retourne toujours `true`, peu importe si l'erreur à pu être enregistrée dans le journal d'événements.

### Historique

Version | Description
--- | ---
8.0.0 | `destination` et `additional_headers` sont désormais nullables.

### Exemples

Exemple #1 Exemples avec error_log()

`<?php
// Envoie une notification par l'historique du serveur web,
// si la connexion à la base de données est impossible.
if (!Ora_Logon($username, $password)) {
error_log("Base Oracle indisponible !", 0);
}
// Indiquer à l'administrateur, par email, qu'il n'y a plus de FOO
if (!($foo = allocate_new_foo())) {
error_log("Aya!, Il ne reste plus de FOO disponibles !", 1,
"operateur@example.com");
}
// D'autres manières d'appeler error_log():
error_log("Grosse bourde !", 3, "/var/tmp/mes-erreurs.log");
?>`

### Notes

Avertissement

La fonction error_log() n'est pas sûr, au niveau binaire. Le paramètre `message` sera tronqué par un caractère nul.

Astuce

Le paramètre `message` ne doit pas contenir de caractère nul. Notez que le paramètre `message` peut être envoyé vers un fichier, un mail, syslog, etc. Utilisez les fonctions appropriées de conversion/échappement, base64_encode(), rawurlencode() ou addslashes() avant d'appeler la fonction error_log().