PHPでエラーメッセージを見やすくするwhoopsの利用方法
PHPのエラーメッセージが見づらい。これはこういうもの、と諦めていたがCodeigniterのデバッグモードだと見やすい表示にしてくれるので、バニラPHPでもライブラリか何かを導入すればいいんじゃないかと思った。調べたところwhoopsというエラーハンドラーフレームワークが良いらしい。以下に導入方法をメモ。
whoops
公式サイト
https://github.com/filp/whoops
インストール方法
以下コマンドでインストールする。
composer require filp/whoops
使い方
ソースコード
require 'vendor/autoload.php'; $whoops = new \Whoops\Run; $whoops->pushHandler(new \Whoops\Handler\PrettyPageHandler); $whoops->register();
共通ファイルとかの頭の部分で上記ソースコードを書いておくと良さそう。
出力例
バニラPHPの場合
Fatal error: Uncaught Error: Class 'TCPDF' not found in /vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Pdf/Tcpdf.php:33 Stack trace: #0 /vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Pdf/Tcpdf.php(57): PhpOffice\PhpSpreadsheet\Writer\Pdf\Tcpdf->createExternalWriterInstance() #1 /var/www/hoge/index.php(49): PhpOffice\PhpSpreadsheet\Writer\Pdf\Tcpdf->save() #2 {main} thrown in /vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Pdf/Tcpdf.php on line 33
上記のように一行でずらっと表示されるため見づらい。
whoopsの場合
見た目がリッチになり、尚且つ赤枠部分をクリックするとエラーに対応したソースコードが右側に表示され見やすい(原因を追いやすい)。
関連記事
-
Composer無し&ファイル1枚でPHPのエラーメッセージ画面をリッチにするライブラリ「PHP Error」の利用方法
先日PHPのエラーメッセージを見やすくするwhoopsの利用方法をメモしたが導入 ...
-
PHPで画像アップロード、リサイズ、形式変換(jpg->webp等)はclass.upload.phpが便利
今までPHPで画像関連の処理を行う場合、リサイズの時のみsmart_resize ...
-
PHPで画像を比較して類似度を算出する「image-comparator」ライブラリの利用方法
PHPで画像の類似度を計測したい。ただ、そのためのロジックが全く分からないためラ ...
-
PHPでvar_dumpをツールバー形式で表示するライブラリ「Kint」の使い方
PHPでvar_dumpを見やすくするためにdBugライブラリを利用しているが、 ...
-
PHPでCSVを簡単に取り扱える「LeagueCSV(thephpleague / csv)」の利用方法
PHPでCSVファイルの書き込みや読み込みを行う際、バニラPHPで対応していたが ...