Maison  >  Article  >  développement back-end  >  Utilisation de la fonction error_reporting en php

Utilisation de la fonction error_reporting en php

陈政宽~
陈政宽~original
2017-06-28 13:26:171278parcourir

Cet article présente principalement des informations pertinentes sur l'utilisation détaillée de la fonction error_reporting en PHP. Les amis qui en ont besoin peuvent se référer à l'

introduction détaillée à l'utilisation de la. Fonction error_reporting en PHP

La fonction error_reporting est utilisée pour gérer les erreurs en PHP. La plus courante est error_reporting(E_ALL ^ ​​​​E_NOTICE). Ci-dessous, nous analysons en détail la fonction error_reporting.

Utilisation de la définition

error_reporting() Définit le niveau de rapport d'erreurs de PHP et renvoie le niveau actuel.

Syntaxe

error_reporting(report_level)

Si le paramètre report_level n'est pas spécifié, le niveau d'erreur actuel sera renvoyé. Les éléments suivants sont des valeurs possibles de report_level :

Valeur Constante Description th>
1 E_ERROR Erreur d'exécution fatale. Erreur irrécupérable. Arrêtez d'exécuter le script.
2 E_WARNING Erreur d'exécution non fatale. L'exécution du script ne s'arrête pas.
4 E_PARSE Erreur de compilation.
8 E_NOTICE Rappel d'exécution.
16 E_CORE_ERROR Erreur fatale au démarrage de PHP. C'est comme un E_ERROR dans le noyau PHP
32 E_CORE_WARNING Une erreur non fatale au démarrage de PHP. Cela ressemble à un avertissement E_WARNING dans le noyau PHP
64 E_COMPILE_ERROR erreur fatale de compilation. C'est comme une erreur de compilation E_ERROR
128 E_COMPILE_WARNING non fatale générée par le moteur de script Zend. Le moteur a généré un avertissement E_WARNING
256 E_USER_ERROR
常量 描述
1 E_ERROR 致命的运行时错误。无法恢复的错误。停止执行脚本。
2 E_WARNING 非致命的运行时错误。脚本的执行并没有停止。
4 E_PARSE 编译时错误。
8 E_NOTICE 运行时提醒。
16 E_CORE_ERROR 在PHP启动时的致命错误。这就好比一个在PHP核心的E_ERROR
32 E_CORE_WARNING 在PHP启动时的非致命的错误。这就好比一个在PHP核心E_WARNING警告
64 E_COMPILE_ERROR 致命的编译时错误。 这就像由Zend脚本引擎生成了一个E_ERROR
128 E_COMPILE_WARNING 非致命的编译时错误,由Zend脚本引擎生成了一个E_WARNING警告
256 E_USER_ERROR 用户自定义的致命错误
512 E_USER_WARNING 用户自定义的警告(非致命性错误)
1024 E_USER_NOTICE 用户自定义的提醒(经常是bug,也可能是有意的)
2048 E_STRICT 编码标准化警告(建议如何修改以向前兼容)
4096 E_RECOVERABLE_ERROR 接近致命的运行时错误,若未被捕获则视同E_ERROR
8191 E_ALL 除E_STRICT外的所有错误
Erreur fatale définie par l'utilisateur
512 E_USER_WARNING Avertissement défini par l'utilisateur (erreur non fatale)
1024 E_USER_NOTICE Rappel défini par l'utilisateur (souvent un bug, peut également être intentionnel)
2048 E_STRICT Avertissement de normalisation d'encodage (suggestions sur la façon de modifier vers Anciennement compatible) td>
4096 E_RECOVERABLE_ERROR Une erreur d'exécution presque fatale Si elle n'est pas détectée, elle sera traitée comme E_ERROR td><.>
8191 E_ALL Toutes les erreurs sauf E_STRICT

PHP le fait n'active pas les erreurs par défaut, vous devez donc configurer le fichier php.ini :

Changer display_errors = Off en display_errors = On

De plus, le niveau d'erreur doit être configuré, car PHP affiche toutes les erreurs par défaut, et nous n'avons pas besoin de quelques invites inoffensives, donc les paramètres sont les suivants :

Remplacez error_reporting = E_ALL par error_reporting = E_ALL & ~E_NOTICE

Exemple d'utilisation dans le code PHP :

Astuce : N'importe quel nombre des options ci-dessus peut être connecté avec "OR" (utilisez OR ou |) , Cela signale toutes les erreurs requises à tous les niveaux. Par exemple, le code suivant désactive les erreurs et les avertissements définis par l'utilisateur, effectue certaines opérations, puis revient au niveau d'erreur d'origine :

<?php
 
//禁用错误报告
 
error_reporting(0);
 
//报告运行时错误
 
error_reporting(E_ERROR | E_WARNING | E_PARSE);
 
//报告所有错误
 
error_reporting(E_ALL);
 
?>

Pour comprendre comment la fonction error_reporting est utilisée, consultez error_reporting( E_ALL ^ ​​​​E_NOTICE) Ce code permet d'afficher tous les messages d'erreur sauf E_NOTICE.

Merci d'avoir lu, j'espère que cela pourra vous aider, merci pour votre soutien à ce site !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn