当前位置: 首页 > 工具软件 > DebugBar > 使用案例 >

laravel 调试 debugbar 安装及使用

狄兴业
2023-12-01

一、正常安装

  1. 命令行模式运行,安装包
composer require barryvdh/laravel-debugbar --dev
  1. 打开config/app.php ,在providers项下添加代码
Barryvdh\Debugbar\ServiceProvider::class

保存,刷新页面,页面下方就看到debug调试信息了

debugbar 相关配置:
https://github.com/barryvdh/laravel-debugbar

二、安装常见问题
composer.json 已存在

"barryvdh/laravel-debugbar": "^3.1",

composer.lock 已存在

 "packages-dev": [
        {
            "name": "barryvdh/laravel-debugbar",
            "version": "v3.1.0",

             ....

{
            "name": "maximebf/debugbar",
            "version": "v1.14.1",
             ...

响应包也已存在
但是debugbar 在浏览期中并没有加载出来


解决过程:
使用命令安装

composer require barryvdh/laravel-debugbar --dev -vvv

报错
installation request for maximebf/debugbar (locked at v1.14.1)

解决办法:
指定版本安装

composer update  barryvdh/laravel-debugbar:3.2.1

下方这个命令是否有效? 没有验证,建议可以尝试下。 如果有答案,可以评论中回复。

composer update  barryvdh/laravel-debugbar:3.2.1

正常安装完后,默认debugbar 是开启的。
控制开关在 .env 配置文件中的 APP_DEBUG ;true 开启,false 关闭

APP_DEBUG=true

但是这是全局控制的。
三、如果不希望debugbar 自动显示。
在 config/app.php 中更改:
providers 数组中添加

Barryvdh\Debugbar\ServiceProvider::class

如果希望使用facade, 在 facades 数组中添加:

'Debugbar' => Barryvdh\Debugbar\Facade::class

facade 的作用:
laravel5创建一个facade,可以将某个service注册个门面,这样,使用的时候就不需要麻烦地use 了。

四、实现按需加载


想要实现按需加载,操作如下:
执行下方命令,会在config 中生成 debugBar 文件。

php artisan vendor:publish --provider="Barryvdh\Debugbar\ServiceProvider"

debugBar 文件中,可以设置开关 覆盖掉全局开关(ENV.APP_DEBUG)
在 env文件更改,实现局部控制。

# 关闭全局
APP_DEBUG=false
# 开启局部
DEBUGBAR_ENABLED=true

使用场景:
1.按开发环境显示:
/app/Providers/AppServiceProvider.php 中添加代码

    public function register()
    {
       # 开发环境加载
       if($this->app->environment() == 'local'){
            $this->app->register(\Barryvdh\Debugbar\ServiceProvider::class);
            $this->app->register(\Barryvdh\Debugbar\Facade::class);
        }
    }
  1. 部分页面不需要显示debugbar。
    在代码需求处添加:
\Debugbar::disable();

3.路由控制显示。
使用 if 进行路由判断即可。


其他使用,同理。

 类似资料: