Maison > Article > développement back-end > Description détaillée de la fonction php error_reporting()
Quand j'ai regardé le connect.php d'Empire cms, j'ai découvert que la première phrase était error_reporting(E_ALL ^ E_NOTICE) ; une invite d'erreur, mais je ne connais pas les détails. Ci-dessous, j'ai extrait quelques éléments d'Internet et les ai résumés.
Exemple :
Sous Environnement Windows : Un programme qui fonctionnait normalement à l'origine dans php4.3.0 signale plusieurs erreurs dans la version 4.3.1. L'invite générale est la suivante. :Remarque : Varialbe non défini : nom de la variable.
Par exemple, le code suivant :
Le code est le suivant :
if (!$tmp_i) { $tmp_i=10; }
Il s'exécute normalement en 4.3.0. et en 4.3. Lors de l'exécution en 1, il affichera Remarque : Varialbe non défini : tmp_i
La question suivante est :
1.
2. Comment ce code doit-il être modifié ?
3. Sans changer le code, comment modifier les paramètres dans php.ini pour que le programme d'origine en 4.3.0 puisse fonctionner normalement dans l'environnement 4.3.1 ? Ce message d'erreur n'apparaîtra pas ?
Ajouter une phrase au début du programme :
error_reporting(E_ALL & ~E_NOTICE); ou error_reporting(E_ALL ^ E_NOTICE
ou
Modifier php.ini
error_reporting =); E_ALL & ~E_NOTICE
À propos de la fonction error_reporting() :
error_reporting() définit le niveau d'erreur de PHP et renvoie le niveau actuel.
;
Le rapport d'erreurs est au niveau du bit. Ou additionnez les chiffres pour obtenir le niveau de rapport d’erreurs souhaité. ; E_ALL - toutes les erreurs et avertissements
; E_ERROR - erreurs d'exécution fatales
; E_WARNING - avertissements d'exécution (erreurs non fatales)
; erreurs d'analyse au moment de la compilation
; rappel d'exécution (ceux-ci sont souvent causés par des bugs dans votre code,
; ou peuvent être causés par un comportement intentionnel. (par exemple : l'initialisation automatique d'une variable non initialisée dans un
; le fait qu'un la chaîne
utilise une variable non initialisée) ; E_CORE_ERROR - Erreur fatale lors de l'initialisation qui se produit au démarrage de PHP
- Se produit au démarrage de PHP Avertissement lors de l'initialisation (erreur non fatale)
; E_COMPILE_ERROR - Erreur fatale lors de la compilation
; E_COMPILE_WARNING - Avertissement lors de la compilation (erreur non fatale)
; E_
USER_ERROR
- Message d'erreur généré par l'utilisateur ; message d'avertissement ; E_USER_NOTICE - Message de rappel généré par l'utilisateur
Utilisation :
error_reporting(0);//Désactiver le rapport d'erreurs
error_reporting(E_ALL ^ E_NOTICE);//Afficher tout
Messages d'erreur sauf E_NOTICE
error_reporting(E_ALL^E_WARNING^E_NOTICE);//Afficher toutes les erreurs sauf E_WARNING E_NOTICE Informationerror_reporting(E_ERROR | E_WARNING | E_PARSE);//Afficher les erreurs d'exécution, qui a le même effet que error_reporting(E_ALL ^ E_NOTICE); error_reporting(E_ALL);//Afficher toutes les erreurs
définition et utilisation :
error_reporting() définit le niveau d'erreur de PHP et renvoie le niveau actuel 🎜>
Syntaxe de la fonction :Si le paramètre level n'est pas spécifié, le niveau d'erreur actuel sera renvoyé. Voici les valeurs possibles du niveau :
error_reporting(report_level)Description de la constante de valeur1 E_ERROR Fatal <.>Erreur d'exécution
. L'erreur ne peut pas être récupérée et l'exécution du script est suspendue.
2 E_WARNING Avertissement d'exécution (erreur non fatale). Erreur d'exécution non fatale, l'exécution du script ne s'arrêtera pas. 4 Erreur d'analyse lors de la compilation E_PARSE. Les erreurs d'analyse sont générées uniquement par l'analyseur.
8 Rappel d'exécution E_NOTICE (ceux-ci sont souvent causés par des bugs dans votre code, ou peuvent être causés par un comportement intentionnel.)
16 E_CORE_ERROR Erreur fatale lors du processus d'initialisation de démarrage de PHP.
32 E_CORE_WARNING Avertissement lors du processus d'initialisation au démarrage de PHP (erreur non fatale).
64 E_COMPILE_ERROR Erreur fatale lors de la compilation. C'est comme un E_ERROR généré par le moteur de script Zend.
128 E_COMPILE_WARNING Avertissement lors de la compilation (erreur non fatale). C'est comme un avertissement E_WARNING généré par le moteur de script Zend.
256 E_USER_ERROR Message d'erreur défini par l'utilisateur. Cela ressemble à un message d'avertissement défini par l'utilisateur créé à l'aide de la fonction PHP
trigger_error(le programmeur définit E_ERROR)
512 E_USER_WARNING. C'est comme un message de rappel défini par l'utilisateur utilisant la fonction PHP trigger_error (un avertissement E_WARNING défini par le programmeur) 1024 E_USER_NOTICE. C'est comme un avertissement standardisé codé par
2048 E_STRICT à l'aide de la fonction PHP trigger_error (le programmeur a un ensemble E_NOTICE). Permet à PHP de suggérer comment modifier le code pour garantir une interopérabilité et une compatibilité ascendante optimales.
4096 E_RECOVERABLE_ERROR Erreur fatale lors de la capture. Ceci est comme un E_ERROR, mais peut être détecté via un gestionnaire défini par l'utilisateur (voir aussi set_error_handler ())
8191 E_ALL Toutes les erreurs et avertissements (à l'exclusion de E_STRICT) (E_STRICT fera partie de E_ALL à partir de PHP 6.0)
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!