Les fonctions Erreur et Journalisation vous permettent de gérer et de journaliser les erreurs.
La fonction Erreur permet à l'utilisateur de définir des règles de gestion des erreurs et de modifier la manière dont les erreurs sont journalisées.
La fonction de journalisation permet aux utilisateurs de consigner des applications et d'envoyer des messages de journal par courrier électronique, dans les journaux système ou sur d'autres machines.
La fonction d'erreur est affectée par le fichier de configuration php.ini.
Options de configuration des erreurs et des journaux :
paramètre | valeur par défaut | décrire | Plage modifiable |
---|---|---|---|
rapport_erreur | NUL | Définit le niveau d'erreur de PHP et renvoie le niveau actuel (nombre ou constante). | PHP_INI_ALL |
display_errors | "1" | Cette option définit si les messages d'erreur sont affichés à l'écran dans le cadre de la sortie ou masqués à l'utilisateur. Remarque : Cette fonctionnalité ne doit pas être utilisée dans l'environnement de production (utilisée pendant le développement et les tests) | PHP_INI_ALL |
display_startup_errors | "0" | Même si display_errors est activé, les messages d'erreur lors du démarrage de PHP ne seront pas affichés. Il est fortement recommandé de désactiver display_startup_errors, sauf à des fins de débogage. | PHP_INI_ALL |
journal_erreurs | "0" | Définissez s'il faut enregistrer les informations sur les erreurs d'exécution du script dans le journal des erreurs du serveur ou dans error_log. Notez qu'il s'agit d'un élément de configuration spécifique au serveur. | PHP_INI_ALL |
log_errors_max_len | "1024" | Définissez le nombre maximum d'octets dans log_errors. Les informations sur la source de l'erreur seront ajoutées à error_log. La valeur par défaut est 1024. Si la valeur est 0, il n'y a aucune limite à la longueur. Ce paramètre de longueur a un effet limitant sur les erreurs enregistrées, les erreurs affichées et $php_errormsg. | PHP_INI_ALL |
ignore_repeated_errors | "0" | Les informations en double ne sont pas enregistrées. Des erreurs répétées doivent se produire sur la même ligne de code dans le même fichier, sauf si ignore_repeated_source est défini sur true. | PHP_INI_ALL |
ignore_repeated_source | "0" | Lorsque les messages en double sont ignorés, la source du message est également ignorée. Lorsque ce paramètre est activé, les messages en double n'enregistreront pas s'ils ont été générés par des fichiers différents ou des lignes différentes de code source. | PHP_INI_ALL |
rapport_memleaks | "1" | Si ce paramètre est défini sur Off, les informations sur les fuites de mémoire ne seront pas affichées (dans la sortie standard ou dans les journaux). | PHP_INI_ALL |
track_errors | "0" | Si activé, la dernière erreur existera toujours dans la variable $php_errormsg. | PHP_INI_ALL |
erreurs_html | "1" | Fermez les balises HTML dans les messages d'erreur. | PHP_INI_ALLPHP_INI_SYSTEM en PHP <= 4.2.3. |
xmlrpc_erreurs | "0" | Désactive le rapport d'erreurs normal et formate les erreurs sous forme de messages d'erreur XML-RPC. | PHP_INI_SYSTEM |
xmlrpc_error_number | "0" | Utilisé comme valeur pour l'élément XML-RPC errorCode. | PHP_INI_ALL |
racine_docref | "" | Le nouveau format de message d'erreur comprend une page de référence correspondante qui décrit spécifiquement l'erreur ou décrit la fonction à l'origine de l'erreur. Afin de fournir des pages de manuel, vous pouvez télécharger le manuel de langue correspondant depuis le site officiel de PHP et définir l'URL dans l'ini sur l'adresse locale correspondante. Si votre copie locale du manuel est accessible à l'aide de "/manual/", vous pouvez simplement définir docref_root=/manual/. De plus, vous devez également définir docref_ext pour qu'il corresponde au suffixe de votre fichier local docref_ext=.html. Bien entendu, vous pouvez également définir une adresse de référence externe. Par exemple, vous pouvez définir docref_root=http://manual/en/ ou docref_root="http://landonize.it/?how=url&theme=classic&filter=Landon &url=http%3A%2F%2Fwww.php.net%2F " | PHP_INI_ALL |
docref_ext | "" | Voir docref_root. | PHP_INI_ALL |
erreur_prepend_string | NUL | Le contenu affiché avant le message d'erreur. | PHP_INI_ALL |
erreur_append_string | NUL | Le contenu affiché après le message d'erreur. | PHP_INI_ALL |
journal_erreur | NUL | Définit le fichier dans lequel les erreurs de script seront enregistrées. Le fichier doit être accessible en écriture par l'utilisateur du serveur Web. | PHP_INI_ALL |
Les fonctions Error et Logging font partie du cœur de PHP. Aucune installation n'est requise pour utiliser ces fonctions.
PHP : Indique la première version de PHP prenant en charge cette fonction.
fonction | décrire | PHP |
---|---|---|
debug_backtrace() | Générez une trace. | 4 |
debug_print_backtrace() | Imprimer la trace. | 5 |
erreur_get_last() | Obtenez la dernière erreur survenue. | 5 |
journal_erreur() | Envoyez une erreur au journal des erreurs du serveur, au fichier ou à la destination distante. | 4 |
erreur_reporting() | Spécifie quelle erreur signaler. | 4 |
restaurer_erreur_handler() | Restaurez le gestionnaire d'erreurs précédent. | 4 |
restaurer_exception_handler() | Restaurez le gestionnaire d'exceptions précédent. | 5 |
set_error_handler() | Définir la fonction de gestion des erreurs définie par l'utilisateur. | 4 |
set_exception_handler() | Définir la fonction de gestion des exceptions définie par l'utilisateur. | 5 |
déclencheur_erreur() | Créez des messages d'erreur définis par l'utilisateur. | 4 |
erreur_utilisateur() | Alias pour trigger_error(). | 4 |
PHP : Indique la première version de PHP prenant en charge cette constante.
valeur | constante | décrire | PHP |
---|---|---|---|
1 | E_ERREUR | Erreur fatale d'exécution. Erreurs irréparables. Arrêtez d'exécuter le script. | |
2 | E_AVERTISSEMENT | Erreur d'exécution non fatale. L'exécution du script n'est pas arrêtée. | |
4 | E_PARSE | Erreur d'analyse au moment de la compilation. Les erreurs d'analyse ne doivent être générées que par l'analyseur. | |
8 | E_AVIS | Notifications d'exécution. La découverte de scripts peut être un bug, mais peut également se produire lors de l'exécution normale d'un script. | |
16 | E_CORE_ERROR | Erreur fatale au démarrage de PHP. C'est exactement comme E_ERROR du noyau PHP. | 4 |
32 | E_CORE_WARNING | Erreur non fatale au démarrage de PHP. C'est exactement comme E_WARNING du noyau PHP. | 4 |
64 | E_COMPILE_ERROR | Erreur fatale à la compilation. C'est exactement comme le E_ERROR généré par le moteur de script Zend. | 4 |
128 | E_COMPILE_WARNING | Erreur de compilation non fatale. C'est comme un E_WARNING généré par le moteur de script Zend. | 4 |
256 | E_USER_ERROR | Erreur fatale générée par l'utilisateur. C'est comme le E_ERROR généré par le programmeur à l'aide de la fonction PHP trigger_error(). | 4 |
512 | E_USER_WARNING | Erreur non fatale générée par l'utilisateur. C'est comme un E_WARNING généré par le programmeur à l'aide de la fonction PHP trigger_error(). | 4 |
1024 | E_USER_NOTICE | Notifications générées par l'utilisateur. C'est comme le E_NOTICE généré par le programmeur à l'aide de la fonction PHP trigger_error(). | 4 |
2048 | E_STRICT | Notifications d'exécution. PHP vous recommande d'apporter des modifications à votre code pour améliorer l'interopérabilité et la compatibilité du code. | 5 |
4096 | E_RECOVERABLE_ERROR | Erreurs fatales capturables. C'est comme un E_ERROR qui peut être intercepté par un handle défini par l'utilisateur (voir set_error_handler()). | 5 |
6143 | E_TOUS | Tous les niveaux d'erreur et d'avertissement sauf E_STRICT (depuis PHP 6.0, E_STRICT fera partie de E_ALL). | 5 |