关于laravel debug bar
1.使用compser引入package
composer require barryvdh/laravel-debugbar
2.config/app.php的providers中添加注册服务(laravel 5.5在用了auto-discovery后不用添加)
Barryvdh\Debugbar\ServiceProvider::class
3.门面(可选)
#config/app.php中添加如下门面别名到 aliases数组:
'Debugbar' => Barryvdh\Debugbar\Facade::class,
#然后运行如下 Artisan 命令将该扩展包的配置文件拷贝到 config目录下:
php artisan vendor:publish
如果配置文件中 debug设置为 true的话,Debugbar 分析器默认是启的,如果你想要关闭该分析器,在配置文件 config/debugbar.php中设置 enab为 false即可。
使用 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'));
或者通过 App 容器:
$debugbar = App::make('debugbar'); $debugbar->addCollector(new DebugBar\DataCollector\MessagesCollector('my_messages'));
默认情况下,Debugbar 被注入到 </body>之前。如果你想要自己注入 Debugbar,在其配置文件中设置 inject为 false然后使用渲染器自己渲染:
$renderer = Debugbar::getJavascriptRenderer();
注意:使用自动注入的话将会禁止显示 Request 信息,因为在响应之后才会添加该信息。你可以通过在配置文件中添加 default_request数据收集器作为替换方案。
如果你想要在运行时开启/关闭 Debugbar,可以通过如下方式:
\Debugbar::enable();\Debugbar::disable();