Comment déboguer php

王林
王林original
2019-09-24 17:54:237433parcourir

Comment déboguer php

Comment déboguer un programme PHP ?

1. Vérifiez s'il y a des erreurs de syntaxe

php -l test.php
<.>

2. Débogage de base

API de débogage de base :

var_dump($var);print_r($var);echo $var;

Configuration de base :


display_errors、log_errors、error_reporting、error_log

Remarque : Parfois, une erreur les rapports seront désactivés et doivent être activés manuellement.

Codes courants :

ini_set("display_errors","On");
error_reporting(E_ALL);

3. Utilisez la fonction de collecte d'erreurs

—Générer une trace arrière (backtrace)debug_backtrace

— Imprimez un traçage. debug_print_backtrace

— Effacer la dernière erreur error_clear_last

— Récupérer la dernière erreur survenue error_get_last

— Envoyer le message d'erreur quelque part error_log

— Définissez le type d'erreurs PHP à signaler error_reporting

— Restaurez la fonction de gestion des erreurs précédente restore_error_handler

— Restaurez la fonction de gestion des exceptions précédemment définie. restore_exception_handler

— Définir une fonction de gestion des erreurs définie par l'utilisateur set_error_handler

— Définir une fonction de gestion des exceptions définie par l'utilisateur set_exception_handler

— Générer un niveau utilisateur informations d'erreur/avertissement/avis trigger_error

— L'alias de user_errortrigger_error

register_shutdown_function(&#39;my_shutdown_handler&#39;);

function my_shutdown_handler()
{
    $error = error_get_last();
    if ($error) {
        try{
            //发送邮件
        } catch(Exception $e) {

        }
    }
    return false;
}

4 Log

file_put_contents(&#39;log.text&#39;, var_export($var, 1), FILE_APPEND);

doit également être. configuré error_log

sert généralement à vérifier le journal des erreurs d'Apache. Les erreurs d'exécution de la ligne de commande ne peuvent pas être collectées.

5. Utilisez l'outil xdebug

xdebug_start_trace();
/* 业务代码 */
xdebug_stop_trace();

Tutoriel recommandé :

Tutoriel vidéo PHP

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