Maison >développement back-end >tutoriel php >Compétences en matière de gestion des erreurs et de débogage PHP

Compétences en matière de gestion des erreurs et de débogage PHP

王林
王林original
2024-05-03 18:21:01760parcourir

Les compétences en matière de gestion des erreurs et de débogage PHP incluent : Types d'erreurs : E_ERROR, E_WARNING, E_NOTICE Fonctions de gestion des erreurs : register_shutdown_function(), set_error_handler(), error_get_last() Fonctions de gestion des erreurs personnalisées : utilisées pour enregistrer ou gérer les erreurs et empêcher le programme de terminer l'erreur. Conseils de débogage : vérifiez les journaux, utilisez la gestion des exceptions, activez PHP pour afficher les erreurs, utilisez le débogueur en ligne

PHP 错误处理与调试技巧

Conseils de gestion des erreurs PHP et de débogage

La gestion des erreurs en PHP est cruciale pour développer des applications robustes et fiables. Voici quelques conseils pour vous aider à gérer et déboguer efficacement les erreurs PHP :

Types d'erreurs

Les erreurs PHP sont divisées dans les types suivants :

  • E_ERROR : Une erreur grave et le programme ne peut pas continuer son exécution.
  • E_WARNING : Erreur non critique, mais peut entraîner un comportement inattendu.
  • E_NOTICE : Erreur non critique, indiquant généralement une mauvaise utilisation de PHP.

Fonctions de gestion des erreurs

PHP fournit les fonctions de gestion des erreurs suivantes :

  • register_shutdown_function() : Appelée à la fin de l'exécution du script pour signaler les erreurs fatales.
  • set_error_handler() : définissez une fonction personnalisée pour gérer les erreurs.
  • error_get_last() : obtenez les dernières informations sur les erreurs.

Exemple de fonction de gestion des erreurs

Ce qui suit est un exemple de fonction de gestion des erreurs qui enregistre les erreurs fatales dans un fichier journal :

function error_handler(int $errno, string $errstr, string $errfile, int $errline)
{
    $message = sprintf("Error (%d): %s in %s on line %d", $errno, $errstr, $errfile, $errline);
    file_put_contents('error_log.txt', $message);
}

Utilisation d'une fonction de gestion des erreurs personnalisée

Pour utiliser une fonction de gestion des erreurs personnalisée, veuillez appelez set_error_handler() au début de votre script :

set_error_handler('error_handler');

Conseils de débogage des erreurs

Voici quelques conseils pour vous aider à déboguer les erreurs PHP :

  • Vérifiez les journaux du serveur.
  • Utilisez la gestion des exceptions.
  • Activez PHP pour afficher les erreurs.
  • Utilisez un débogueur en ligne.

Exemple pratique

Supposons que vous ayez un script PHP qui essaie de lire un fichier qui n'existe pas. Cette erreur entraîne une erreur fatale.

$file = "/path/to/non-existent-file.txt";
$contents = file_get_contents($file);

Pour gérer cette erreur, vous pouvez utiliser une fonction de gestion des erreurs personnalisée :

function error_handler(int $errno, string $errstr, string $errfile, int $errline)
{
    if ($errno === E_ERROR) {
        // 记录错误
    }
}

set_error_handler('error_handler');

De cette façon, lorsque le script essaie de lire un fichier qui n'existe pas, l'erreur sera enregistrée et le programme poursuivra son exécution.

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