Maison  >  Article  >  développement back-end  >  Explication détaillée du niveau d'erreur d'erreur en php

Explication détaillée du niveau d'erreur d'erreur en php

PHPz
PHPzoriginal
2023-04-04 14:29:211091parcourir

Lors du développement avec PHP, vous devez souvent utiliser la fonction de journalisation. PHP fournit la fonction error_log, qui peut enregistrer les journaux d'erreurs sur un serveur local ou distant. Le journal des erreurs est divisé en différents niveaux d'erreur, notamment :

  1. E_ERROR : erreur grave, le système ne peut pas continuer à s'exécuter et doit arrêter l'exécution immédiatement.
  2. E_WARNING : Erreur de niveau d'avertissement, le système peut continuer à s'exécuter.
  3. E_NOTICE : Erreur de niveau de notification, certaines valeurs ont été utilisées avant l'affectation.
  4. E_STRICT : Astuces pour les normes de codage, utilisées pour marquer certaines irrégularités dans l'écriture du code.
  5. E_DEPRECATED : Un rappel des fonctionnalités obsolètes qui seront supprimées dans une future version.
  6. E_PARSE : Erreur d'analyse de syntaxe, le code ne peut pas être analysé.

Maintenant, découvrons ces niveaux d'erreur un par un.

  1. E_ERROR

Le niveau d'erreur E_ERROR est le niveau d'erreur le plus élevé en PHP et empêche généralement le programme PHP de continuer à s'exécuter. Par exemple, une variable non définie, appelant une méthode ou une fonction inexistante, etc. Ce niveau d'erreur doit généralement être géré à l'aide de la fonction trigger_error ou set_error_handler.

Ce qui suit est un exemple de code qui utilise la fonction trigger_error pour enregistrer les journaux d'erreurs :

if(!function_exists('test')){
    trigger_error('函数test不存在', E_USER_ERROR);
}
  1. E_WARNING

Le niveau d'erreur E_WARNING signifie généralement qu'il y a des problèmes mineurs dans le code qui n'empêcheront pas le programme PHP de continuer à s'exécuter. . Par exemple, appeler une classe ou une méthode qui n'existe pas, appeler une méthode qui n'est pas accessible, etc. Les erreurs de ce niveau peuvent généralement être traitées à l'aide des instructions try...catch.

Ce qui suit est un exemple de code qui utilise try...catch pour capturer les erreurs d'avertissement :

try{
    $test = new Test();
} catch (Error $e) {
    error_log($e->getMessage());
}
  1. E_NOTICE

Le niveau d'erreur E_NOTICE signifie généralement que certaines informations importantes n'ont pas été traitées correctement. Par exemple, utiliser des variables non initialisées, opérer sur des constantes non définies, etc. Les erreurs de ce niveau peuvent généralement être traitées à l'aide de la fonction isset.

Ce qui suit est un exemple de code qui utilise la fonction isset pour gérer les erreurs de notification :

if (!isset($test)) {
    error_log('未定义的变量');
}
  1. E_STRICT

Le niveau d'erreur E_STRICT est généralement utilisé pour inviter les programmeurs PHP à écrire du code non standard. Par exemple, en utilisant une syntaxe obsolète, des astuces de type inappropriées, etc. Les erreurs de ce niveau peuvent être résolues en modifiant le code.

  1. E_DEPRECATED

Le niveau d'erreur E_DEPRECATED est généralement utilisé pour rappeler aux programmeurs PHP que certaines fonctionnalités seront supprimées dans les versions futures. Par exemple, les paramètres d'une fonction ont changé mais l'ancienne version des paramètres de la fonction est toujours utilisée. Les erreurs de ce niveau peuvent être résolues en modifiant le code.

  1. E_PARSE

Le niveau d'erreur E_PARSE est une erreur d'analyse de syntaxe. Une erreur de syntaxe est détectée lors de la vérification de l'exactitude du programme PHP. Habituellement, le programme ne peut pas être analysé et exécuté. Par exemple, oublier de saisir un point-virgule à la fin d'une instruction, utiliser des mots-clés invalides, etc. Les erreurs de ce niveau peuvent être résolues en modifiant le code.

Lors de l'écriture de programmes PHP, nous devons gérer raisonnablement différents niveaux d'erreur et enregistrer les informations sur les erreurs en temps opportun pour garantir la robustesse et la stabilité du programme.

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