PHP est un langage de script côté serveur populaire qui est largement utilisé dans le développement Web. La gestion des erreurs est une partie cruciale du processus de développement. PHP 8 introduit de nombreuses améliorations pour rendre la gestion des erreurs plus puissante et flexible. Cet article utilisera des exemples de code spécifiques pour vous aider à comprendre en profondeur le mécanisme de gestion des erreurs de PHP 8.
Le mécanisme de gestion des erreurs de PHP 8 comprend principalement le niveau de rapport d'erreur, l'opérateur de suppression d'erreur, la gestion des exceptions et les gestionnaires d'erreurs personnalisés.
Le niveau de rapport d'erreur détermine comment PHP rapporte et gère les erreurs. Vous pouvez spécifier différents niveaux, tels que E_ALL, E_ERROR, E_WARNING et E_NOTICE, via le paramètre Error_Reporting dans php.ini, ou appeler la fonction error_reportting () dans votre code. La familiarité avec ces niveaux est essentielle pour le débogage et la gestion des erreurs.
L'opérateur de suppression d'erreur (@) est utilisé pour supprimer l'affichage d'erreur dans un code spécifique. Bien qu'il soit pratique, la surutilisation couvrira le problème et affectera l'efficacité du débogage.
La gestion des exceptions adopte une approche orientée objet. Lorsqu'une exception se produit dans un programme, un objet d'exception peut être lancé et capturé et traité via l'instruction TRY-Catch pour réaliser la transmission hiérarchique des informations d'erreur et améliorer la capacité de gestion des erreurs.
Les gestionnaires d'erreurs personnalisés vous permettent de définir les fonctions exclusives de traitement des erreurs, au lieu du mécanisme par défaut, ce qui rend le comportement de traitement des erreurs plus conformément aux besoins d'application.
<?php error_reporting(E_ALL); <p>echo $ undefinedvariable; // AVIS: Variable non définie: UndefinedVariable<br> inclure «non existant-file.php»; // AVERTISSEMENT: inclure (non existant-file.php): n'a pas ouvert le flux<br> ?>
Le code ci-dessus définit le rapport d'erreur sur E_ALL, déclenchant délibérément des variables et des erreurs non définies contenant des fichiers inexistants pour observer la sortie d'erreur complète.
<?php class CustomException extends Exception {} <p>fonction test () {<br> Jetez une nouvelle garde-robe ("Ceci est une exception personnalisée");<br> }</p> <p>essayer {<br> test();<br> } catch (Customexception $ e) {<br> Echo "A fait exception:". $ e-> getMessage ();<br> }<br> ?>
Une classe Customexception est définie et l'exception est lancée dans la fonction. L'application du mécanisme d'exception est démontrée par capture et traitement des coups d'essai.
<?php function customErrorHandler($errNo, $errMsg, $errFile, $errLine) { echo "Custom error handler: $errMsg in $errFile on line $errLine"; } <p>set_error_handler ("CustomErrorHandler");</p> <p>echo $ undefinedvariable; // Handleur d'erreur personnalisée: Variable non définie: UndefinedVariable dans test.php sur la ligne 8<br> ?>
Après enregistrer une fonction de gestion des erreurs personnalisée, le message d'erreur est formaté et sorti pour remplacer le comportement de traitement par défaut des erreurs.
La gestion des erreurs est une partie indispensable du développement de PHP. En maîtrisant le niveau de rapport d'erreur PHP 8, la gestion des exceptions et le gestionnaire d'erreurs personnalisés, et la combinaison de la pratique réelle du code, la robustesse et la maintenance du code peuvent être améliorées. La pratique est le meilleur moyen d'approfondir la compréhension. Il est recommandé que les développeurs expérimentent davantage et se familiarisent progressivement avec et utilisent de manière flexible ces mécanismes.