Erreur PHP Présentation
Les fonctions d'erreur sont utilisés pour traiter la gestion des erreurs et l'exploitation forestière.
Les fonctions d'erreur nous permettent de définir les règles de traitement des erreurs et modifier la façon dont les erreurs peuvent être enregistrées.
Les fonctions de journalisation nous permettent d'envoyer des messages directement à d'autres machines, des e-mails ou les journaux système.
Les fonctions de rapport d'erreur nous permettent de personnaliser le niveau et le type de rétroaction d'erreur est donnée.
Installation
Les fonctions d'erreur PHP font partie du noyau de PHP. Aucune installation est nécessaire pour utiliser ces fonctions.
Configuration à l'exécution
Le comportement des fonctions d'erreur est affectée par les paramètres dans le fichier php.ini.
Les erreurs et les options de configuration de l'enregistrement:
prénom | Défaut | La description | Changeable |
---|---|---|---|
error_reporting | NUL | Définit le niveau de rapport d'erreurs (soit un nombre entier ou constantes nommées) | PHP_INI_ALL |
display_errors | "1" | Indique si les erreurs doivent être affichées à l'écran, ou si elles doivent être cachées à l'utilisateur. Remarque: Cette fonction ne doit jamais être utilisé sur les systèmes de production (uniquement pour soutenir votre développement) | PHP_INI_ALL |
display_startup_errors | "0" | Même si display_errors est activé, les erreurs qui se produisent lors de la séquence de démarrage de PHP ne sont pas affichés Note: Il est fortement recommandé de garder display_startup_errors au large, sauf pour le débogage | PHP_INI_ALL |
log_errors | "0" | Définit si les messages d'erreur de script doivent être enregistrés dans le journal ou error_log d'erreur du serveur. Note: Il est fortement conseillé d'utiliser la journalisation d'erreur au lieu d'afficher les erreurs sur les sites Web de production | PHP_INI_ALL |
log_errors_max_len | "1024" | Définit la longueur maximale de log_errors en octets. La valeur "0" peut être utilisé de ne pas appliquer à tous une longueur maximale. Cette longueur est appliquée à des erreurs enregistrées, afficher les erreurs, et aussi php_errormsg $ (available since PHP 4.3) | PHP_INI_ALL |
ignore_repeated_errors | "0" | Indique si la journalisation des messages d'erreur répétés. Lorsqu'il est réglé sur "1" il ne sera pas enregistrer les erreurs avec des erreurs répétées du même fichier sur la même ligne (available since PHP 4.3) | PHP_INI_ALL |
ignore_repeated_source | "0" | Indique si la journalisation des messages d'erreur répétés. Lorsqu'il est réglé sur "1" il ne sera pas enregistrer les erreurs avec des erreurs répétées de différents fichiers ou lignes de source (available since PHP 4.3) | PHP_INI_ALL |
report_memleaks | "1" | Si la valeur "1" (the default) , ce paramètre indique un rapport de fuites de mémoire détectées par le gestionnaire de mémoire Zend (available since PHP 4.3) | PHP_INI_ALL |
track_errors | "0" | Si la valeur "1" , le dernier message d'erreur sera toujours présente dans la variable $ php_errormsg | PHP_INI_ALL |
html_errors | "1" | Désactive balises HTML dans les messages d'erreur | PHP_INI_ALL PHP_INI_SYSTEM en PHP <= 4.2.3. |
xmlrpc_errors | "0" | Désactive les erreurs de déclaration d'erreur normale et formats comme message d'erreur XML-RPC (available since PHP 4.1) | PHP_INI_SYSTEM |
xmlrpc_error_number | "0" | Utilisé comme la valeur de l'élément XML faultCode-RPC (available since PHP 4.1) | PHP_INI_ALL |
docref_root | « » | (Disponible depuis PHP 4.3) | PHP_INI_ALL |
docref_ext | « » | (Disponible depuis PHP 4.3.2) | PHP_INI_ALL |
error_prepend_string | NUL | Indique une chaîne de sortie avant un message d'erreur | PHP_INI_ALL |
error_append_string | NUL | Indique une chaîne de sortie après un message d'erreur | PHP_INI_ALL |
error_log | NUL | Indique le nom du fichier dans lequel les erreurs de script doivent être enregistrées. Le fichier doit être accessible en écriture par l'utilisateur du serveur web. Si la valeur spéciale syslog est utilisée, les erreurs sont envoyées à l'enregistreur du système | PHP_INI_ALL |
Erreur PHP et journalisation Fonctions
Fonction | La description |
---|---|
debug_backtrace() | Génère un backtrace |
debug_print_backtrace() | Imprime un backtrace |
error_get_last() | Retourne la dernière erreur survenue |
error_log() | Envoie un message d'erreur à un journal, à un fichier ou à un compte de messagerie |
error_reporting() | Indique les erreurs sont signalées |
restore_error_handler() | Restaure le gestionnaire d'erreurs précédent |
restore_exception_handler() | Restaure le gestionnaire d'exceptions précédente |
set_error_handler() | Définit une fonction de gestionnaire d'erreur défini par l'utilisateur |
set_exception_handler() | Définit une fonction de gestionnaire d'exception définie par l'utilisateur |
trigger_error() | Crée un message d'erreur au niveau utilisateur |
user_error() | Alias de trigger_error() |
PHP 5 erreur et journalisation Constantes pré-définies
Valeur | Constante | La description |
---|---|---|
1 | E_ERROR | erreurs d'exécution fatale. Les erreurs qui ne peuvent pas être ignorées. L'exécution du script est interrompue |
2 | E_WARNING | Avertissements d' exécution (non-fatal errors) . L'exécution du script n'est pas interrompue |
4 | E_PARSE | La compilation erreurs d'analyse. Parse erreurs ne devraient être générés par l'analyseur |
8 | E_NOTICE | Avis d'exécution. Le script a trouvé quelque chose qui pourrait être une erreur, mais pourrait également se produire lors de l'exécution d'un script normalement |
16 | E_CORE_ERROR | Les erreurs fatales au démarrage PHP. Ceci est comme E_ERROR, mais elles sont générées par le noyau de PHP |
32 | E_CORE_WARNING | Les erreurs non fatales au démarrage PHP. Cela ressemble à E_WARNING, mais elles sont générées par le noyau de PHP |
64 | E_COMPILE_ERROR | erreurs de compilation fatale. C'est comme E_ERROR, sauf qu'il est généré par le moteur Zend Scripting |
128 | E_COMPILE_WARNING | erreurs de compilation non mortelles. Cela ressemble à E_WARNING, mais elle est générée par le moteur Zend Scripting |
256 | E_USER_ERROR | erreur fatale généré par l'utilisateur. Ceci est comme E_ERROR, sauf qu'il est généré dans le code PHP en utilisant la fonction PHP trigger_error() |
512 | E_USER_WARNING | avertissement généré par les utilisateurs non mortels. Cela ressemble à E_WARNING, mais elles sont générées dans le code PHP en utilisant la fonction PHP trigger_error() |
1024 | E_USER_NOTICE | avis généré par l'utilisateur. Ceci est comme E_NOTICE, sauf qu'il est généré dans le code PHP en utilisant la fonction PHP trigger_error() |
2048 | E_STRICT | Activer pour avoir PHP suggérer des modifications à votre code qui assurera la meilleure interopérabilité et compatibilité de votre code (Depuis PHP 5, mais non inclus dans E_ALL jusqu'à ce que PHP 5.4) |
4096 | E_RECOVERABLE_ERROR | Catchable erreur fatale. Indique qu'une erreur probablement dangereuse a eu lieu, mais n'a pas quitté le moteur dans un état instable. Si l'erreur ne se coince pas une poignée définie par l'utilisateur, l'application avorte comme il était un E_ERROR (Since PHP 5.2) |
8192 | E_DEPRECATED | Avis d'exécution. Activez cette option pour recevoir des avertissements sur le code qui ne fonctionnera pas dans les futures versions (Since PHP 5.3) |
16384 | E_USER_DEPRECATED | message d'avertissement généré par l'utilisateur. C'est comme E_DEPRECATED, sauf qu'il est généré dans le code PHP en utilisant la fonction PHP trigger_error() (Depuis PHP 5.3) |
32767 | E_ALL | Activer toutes les erreurs PHP et avertissements (except E_STRICT in versions < 5.4) les (except E_STRICT in versions < 5.4) |