Maison >développement back-end >Problème PHP >php change le niveau d'erreur
Lors du développement avec PHP, nous rencontrons souvent diverses erreurs. Ces messages d'erreur nous aident généralement à dépanner et à résoudre rapidement les problèmes dans le code. Cependant, dans un environnement de production, nous ne souhaitons peut-être pas exposer ces erreurs aux utilisateurs. À cette fin, PHP fournit des fonctions de contrôle du niveau d’erreur, nous permettant de contrôler librement la manière dont les erreurs sont affichées.
Les niveaux d'erreur de PHP sont divisés en 8 niveaux, qui sont :
Il existe deux manières de modifier le niveau d'erreur : utiliser la fonction ini_set pour le configurer dans le code, ou modifier le fichier de configuration PHP php.ini. Ce qui suit est une introduction aux deux méthodes.
Utilisez la fonction ini_set pour modifier le niveau d'erreur// 设置错误级别为E_ALL & ~E_NOTICE & ~E_WARNING ini_set('error_reporting', E_ALL & ~E_NOTICE & ~E_WARNING); // 执行代码 echo $undefinedVariable;
Dans le code ci-dessus, nous utilisons d'abord la fonction ini_set pour définir le niveau d'erreur sur E_ALL & ~E_NOTICE & ~ E_WARNING, puis j'ai intentionnellement accédé à une variable non définie $undefinedVariable. Puisque nous avons désactivé les notifications et les avertissements, PHP ne nous demandera pas l'erreur de notification Variable non définie : undéfiniVariable. Cependant, si nous définissons le niveau d'erreur sur E_ALL, lors de l'accès à une variable non définie, PHP générera une erreur comme celle-ci :
Notice: Undefined variable: undefinedVariable in /path/to/file.php on line 5
Par conséquent, en modifiant le niveau d'erreur, nous pouvons contrôler si PHP affiche certains types de messages d'erreur.
Modifiez le fichier de configuration PHP php.ini pour changer le niveau d'erreur; 显示所有错误 error_reporting = E_ALL ; 显示 E_NOTICE、E_WARNING 和 E_ERROR 级别的错误 error_reporting = E_ERROR | E_WARNING | E_NOTICE ; 显示所有错误,除了 E_NOTICE 级别的错误 error_reporting = E_ALL & ~E_NOTICE
Afin de protéger l'environnement de production, nous définissons généralement le niveau d'erreur sur E_ALL & ~E_NOTICE & ~E_WARNING. Cela désactivera les notifications et les avertissements et affichera uniquement les erreurs fatales et les erreurs d'analyse.
Résumé
Pendant le processus de développement, nous souhaitons rechercher et résoudre les erreurs le plus tôt possible, il est donc très utile d'activer toutes les invites de niveau d'erreur par défaut. Cependant, dans un environnement de production, nous ne souhaitons généralement pas exposer les messages d'erreur aux utilisateurs. Nous devons donc modifier le niveau d'erreur pour contrôler la manière dont les messages d'erreur sont affichés. Nous pouvons réaliser cette fonction via la fonction ini_set ou modifier le fichier de configuration PHP php.ini. En utilisation réelle, nous devons configurer de manière flexible le niveau d'erreur en fonction des besoins réels afin de faciliter le dépannage et la résolution des erreurs en temps opportun.
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!