1、簡介
Laravel Debugbar在 Laravel 5 中集成了PHP Debug Bar用于顯示調試及錯誤信息以方便開發。該擴展包包含了一個 ServiceProvider 用于注冊調試條及開發過程中數據集合顯示,你可以發布其前端資源和配置,還可以配置顯示重定向及 Ajax 請求。
2、安裝
使用 Composer 安裝該擴展包:
composer require barryvdh/laravel-debugbar
這個下載的是最新版本,支持Laravel5.5,Laravel5.5以下版本可使用2.4以下版本:
composer require barryvdh/laravel-debugbar:~2.4
安裝完成后,在 config/app.php 中注冊服務提供者到 providers 數組。
注冊如下服務提供者:
Barryvdh\Debugbar\ServiceProvider::class,
如果你想使用門面,在配置文件 config/app.php 中添加如下門面別名到 aliases 數組:
'Debugbar' => Barryvdh\Debugbar\Facade::class,
將debugbar配置文件提取到 config 目錄下:
php artisan vendor:publish --provider="Barryvdh\Debugbar\ServiceProvider"
如果配置文件中 debug 設置為 true 的話,Debugbar 分析器默認是啟用的,如果你想要關閉該分析器,在配置文件 config/debugbar.php 中設置 enabled 為 false 即可。
3、使用
現在你可以使用 Debugbar 門面添加 PSR-3 級別消息:
Debugbar::info($object);
Debugbar::error('Error!');
Debugbar::warning('Watch out…');
Debugbar::addMessage('Another message', 'mylabel');
還可以設置開始/中止時間:
Debugbar::startMeasure('render','Time for rendering');
Debugbar::stopMeasure('render');
Debugbar::addMeasure('now', LARAVEL_START, microtime(true));
Debugbar::measure('My long operation', function() {
// Do something…
});
或者記錄異常:
try {
throw new Exception('foobar');
} catch (Exception $e) {
Debugbar::addException($e);
}
此外還有輔助函數實現上述調用:
// All arguments will be dumped as a debug message
debug($var1, $someString, $intValue, $object);
start_measure('render','Time for rendering');
stop_measure('render');
add_measure('now', LARAVEL_START, microtime(true));
measure('My long operation', function() {
// Do something…
});
如果你想要添加自己的數據收集器(DataCollector),可以通過容器或門面實現:
Debugbar::addCollector(new DebugBar\DataCollector\MessagesCollector('my_messages'));
如果你想要在運行時開啟/關閉 Debugbar,可以通過如下方式:
\Debugbar::enable();
\Debugbar::disable();