Maison > cadre php > PensezPHP > Comment utiliser Whoops pour déboguer les exceptions ThinkPHP6 ?

Comment utiliser Whoops pour déboguer les exceptions ThinkPHP6 ?

PHPz
Libérer: 2023-06-12 11:34:40
original
1383 Les gens l'ont consulté

Au cours du processus de développement, diverses situations anormales se produisent souvent. Gérer ces situations anormales est une compétence que les développeurs doivent maîtriser. ThinkPHP6 est actuellement l'un des frameworks PHP les plus populaires. Il fournit de puissants mécanismes de gestion des exceptions, mais il doit être combiné avec des outils tiers pour le débogage lorsqu'il est utilisé spécifiquement.

Cet article présentera un outil de débogage PHP très pratique - Whoops, et comment l'utiliser dans ThinkPHP6 pour déboguer diverses situations anormales.

1. Qu'est-ce que Whoops ?

Whoops est une bibliothèque utilisée pour capturer les erreurs et les exceptions lorsque les programmes PHP sont en cours d'exécution. Elle fournit une page d'affichage de messages d'erreur conviviale pour permettre aux programmeurs de trouver les erreurs et de les déboguer.

Whoops prend en charge plusieurs types d'exceptions, notamment les exceptions du noyau PHP, les erreurs fatales, les exceptions définies par l'utilisateur, les exceptions JavaScript, etc. Dans le même temps, la page d'affichage des messages d'erreur fournie par Whoops est également très intuitive, belle et facile à personnaliser.

2. Pourquoi utiliser Whoops dans ThinkPHP6 ?

Le mécanisme de gestion des exceptions intégré au framework ThinkPHP6 est très puissant, mais ses messages d'erreur sont également relativement concis et difficiles à refléter intuitivement le problème. L'utilisation de Whoops peut fournir une page d'affichage des messages d'erreur plus conviviale et plus esthétique, facilitant ainsi la recherche de problèmes.

De plus, l'utilisation de Whoops permet également aux développeurs de bénéficier d'une méthode de débogage plus flexible. Lorsque vous utilisez Whoops, nous pouvons visualiser les valeurs des variables, des piles d'appels, des cookies, des sessions et d'autres informations en temps réel, ce qui est très important pour les programmeurs.

3. Comment utiliser Whoops dans ThinkPHP6 ?

  1. Installer Whoops

Il est très simple d'installer Whoops à l'aide de Composer, il suffit d'exécuter la commande suivante dans le répertoire racine du projet :

composer require filp/whoops
Copier après la connexion
  1. Configurer Whoops

Avant d'utiliser Whoops, nous devons créer quelques configurations simples.

Tout d'abord, nous devons ajouter le fournisseur de services Whoops dans le fichier config/app.php :

// 添加服务提供者
'services' => [
    // ...
        hinkwhoopsServiceProvider::class,
],
Copier après la connexion

Ensuite, nous devons effectuer quelques configurations dans le fichier config/whoops.php. La configuration spécifique est la suivante :

return [
    // 是否开启调试模式
    'debug' => true,

    // 结合thinkphp调试模式
    'think' => true,

    // 是否自动检测控制器、模型等目录下所有类
    'auto_scan' => true,

    // 排除的目录列表,支持正则表达式
    'exclude' => [
        '/vendor/*',
        '/.git/*',
        '/runtime/*',
        '/public/*'
    ],

    // 自定义处理程序
    'handler' => null,

    // 配置文件保存路径,默认路径为'/runtime/whoops'
    'log' => true,
    'log_path' => app()->getRuntimePath() . 'whoops/',

    // 配置报告
    'report' => [
        // 支持'response'、'json'、'html'、'xml'、'console'
        'type' => 'html',

        // 支持'text/plain'、'application/json'、'text/html'、'application/xml'、WhoopsUtilMisc::getPreferredMimeType()
        'content_type' => 'text/html',

        // 配置报告页面还是控制台,'auto'表示自动选择
        'output' => 'auto',

        // 定义页面标题
        'page_title' => 'Whoops Error',

        // 配置访问控制
        'access_control' => [
            // 配置允许的IP列表
            'allow' => [],

            // 配置拒绝的IP列表
            'deny' => [],

            // 配置需要登录的IP列表
            'challenge' => [],
        ]
    ],
];
Copier après la connexion
.

Ce qui précède concerne les éléments de configuration Whoops Basic, dont la plupart peuvent être configurés en fonction de vos propres besoins.

  1. Utiliser Whoops

Après les étapes ci-dessus, nous pouvons utiliser l'outil de débogage Whoops normalement. Lorsqu'une erreur ou une exception se produit lors de l'exécution de notre application, elle passera automatiquement à la page d'affichage du message d'erreur Whoops.

Cette page peut contenir des informations utiles, telles que la pile d'appels, les paramètres de requête, les en-têtes de requête, les cookies, la session et d'autres informations. Ces informations peuvent nous aider à localiser le problème et à le résoudre plus rapidement.

4. Résumé

L'utilisation de Whoops peut fournir une page d'affichage des informations sur les exceptions plus intuitive et plus belle, nous aidant à trouver le problème plus rapidement et à le déboguer. Whoops prend également en charge une variété de types d'exceptions, notamment les exceptions du noyau PHP, les erreurs fatales, les exceptions définies par l'utilisateur, les exceptions JavaScript, etc., ce qui est très pratique.

Utiliser Whoops dans le framework ThinkPHP6 est très simple, il suffit de faire quelques configurations simples pour utiliser l'outil de débogage normalement. Bien entendu, la configuration doit également être ajustée et modifiée en fonction de vos besoins réels.

Enfin, veuillez noter que l'utilisation de Whoops n'est qu'un outil de débogage. La qualité et l'intégrité du code nécessitent toujours que nos développeurs continuent de travailler dur pour assurer la stabilité et la maintenabilité 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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal