ホームページ > PHPフレームワーク > ThinkPHP > Whoops を使用して ThinkPHP6 例外をデバッグするにはどうすればよいですか?

Whoops を使用して ThinkPHP6 例外をデバッグするにはどうすればよいですか?

PHPz
リリース: 2023-06-12 11:34:40
オリジナル
1384 人が閲覧しました

開発の過程では、さまざまな異常事態が頻繁に発生します。このような異常な状況に対処することは、開発者が習得しなければならないスキルです。 ThinkPHP6 は現在最も人気のある PHP フレームワークの 1 つで、いくつかの強力な例外処理メカニズムを提供しますが、特別に使用する場合はデバッグ用のサードパーティ ツールと組み合わせる必要があります。

この記事では、非常に実用的な PHP デバッグ ツールである Whoops と、それを ThinkPHP6 で使用してさまざまな異常な状況をデバッグする方法を紹介します。

1. Whoops とは何ですか?

Whoops は、PHP プログラムの実行時にエラーと例外をキャプチャするために使用されるライブラリです。プログラマーがエラーを見つけやすくするためのわかりやすいエラー メッセージ表示ページを提供します。デバッグ。

Whoops は、PHP カーネル例外、致命的エラー、ユーザー定義例外、JavaScript 例外など、複数の例外タイプをサポートしています。同時に、Whoops が提供するエラー情報表示ページも非常に直感的で美しく、カスタマイズが簡単です。

2. ThinkPHP6 で Whoops を使用する理由は何ですか?

ThinkPHP6 フレームワークの組み込み例外処理メカニズムは非常に強力ですが、そのエラー メッセージも比較的簡潔であり、問​​題を直感的に反映するのが困難です。 Whoops を使用すると、エラー メッセージの表示ページがよりわかりやすく美しくなり、問題を見つけやすくなります。

さらに、Whoops を使用すると、開発者はより柔軟なデバッグ方法を利用できるようになります。 Whoops を使用すると、変数の値、コールスタック、Cookie、セッション、その他の情報をリアルタイムで表示できます。これはプログラマーにとって非常に重要です。

3. ThinkPHP6 で Whoops を使用するにはどうすればよいですか?

  1. Whoops のインストール

Composer を使用して Whoops をインストールするのは非常に簡単です。プロジェクトのルート ディレクトリで次のコマンドを実行するだけです:

composer require filp/whoops
ログイン後にコピー
  1. Whoops の設定

Whoops を使用する前に、簡単な設定を行う必要があります。

まず、config/app.php ファイルに Whoops サービス プロバイダーを追加する必要があります:

// 添加服务提供者
'services' => [
    // ...
        hinkwhoopsServiceProvider::class,
],
ログイン後にコピー

次に、config/whoops.php ファイルでいくつかの構成を行う必要があります。具体的な設定は次のとおりです。

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' => [],
        ]
    ],
];
ログイン後にコピー

上記は Whoops の基本的な設定項目で、そのほとんどは必要に応じて設定できます。

  1. Whoops の使用

上記の手順を完了すると、Whoops デバッグ ツールを通常どおり使用できるようになります。アプリケーションの実行中にエラーまたは例外が発生すると、Whoops エラー メッセージ表示ページに自動的にジャンプします。

このページには、コールスタック、リクエストパラメータ、リクエストヘッダー、Cookie、セッション、その他の情報など、いくつかの有用な情報が含まれる場合があります。この情報は、問題をより迅速に特定して解決するのに役立ちます。

4. 概要

Whoops を使用すると、より直観的で美しい例外情報表示ページが提供され、問題をより迅速に発見してデバッグできるようになります。 Whoops は、PHP カーネル例外、致命的エラー、ユーザー定義例外、JavaScript 例外などを含むさまざまな例外タイプもサポートしているため、非常に実用的です。

ThinkPHP6 フレームワークで Whoops を使用するのは非常に簡単で、通常のデバッグにこのツールを使用するにはいくつかの簡単な設定を行うだけです。もちろん、実際のニーズに応じて構成を調整および変更する必要もあります。

最後に、Whoops の使用は単なるデバッグ ツールであることに注意してください。コードの品質と整合性を確保するには、開発者がプロ​​グラムの安定性と保守性を確保するために引き続き懸命に努力する必要があります。

以上がWhoops を使用して ThinkPHP6 例外をデバッグするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート