laravel中相似於thinkPHP中trace功能

答案來自https://segmentfault.com/q/1010000007716945php

一樓:laravel

到 https://packagist.org 上搜索你想要的關鍵詞,好比查debugbargit

圖片描述

列表中都有描述說明,其實一眼就能看見barryvdh/laravel-debugbar, 打開按說明去作就好了。github

我幫你走一下:sql

1 安裝, 終端進入你的Laravel項目根目錄,經過composer 安裝segmentfault

composer require barryvdh/laravel-debugbar

  

2 讓laravel啓動的時候加載該包的服務提供者類app

這個包是基於maximebf/debugbar包爲laravel作的一個組件,自身已經寫好服務提供者註冊綁定在laravel容器上,咱們只要在app/config.phpproviders加入t它的服務提供者類,讓laravel啓動的時候加載它composer

Barryvdh\Debugbar\ServiceProvider::class,

更具體的本身去研究下,能夠看它在github上的說明: https://github.com/barryvdh/l... 有針對Laravel 和 lumen的詳細配置和用法.ide

不過針對部分方法的調試及查看所寫代碼對應的sql是否OK, 用php artisan tinker會更快,更方便,你能夠在tinker中監聽$querypost

➜ php artisan tinker
Psy Shell v0.7.2 (PHP 7.0.12 — cli) by Justin Hileman
>>> DB::listen(function ($query) { var_dump($query->sql); });
=> null

好比說拿帖子的評論

>>> $post->comments;

string(92) "select * from "comments" where "comments"."post_id" = ?
 and "comments"."post_id" is not null" (這裏顯示了SQL)

=> Illuminate\Database\Eloquent\Collection {#623
     all: [
       App\Comment {#638
         id: "1",
         post_id: "1",
         content: "Some comment for the post",
         created_at: "2016-11-15 01:07:53",
         updated_at: "2016-11-15 01:07:53",
       },

 

二樓:

又看到題主了

composer require barryvdh/laravel-debugbar

添加

config/app.php
'providers' => [
    ...
    Barryvdh\Debugbar\ServiceProvider::class,
]

三樓:

除了composer require barryvdh/debugbar,phpstrom還有ide插件 composer require barryvdh/laravel-ide-helper
若是不想安裝插件,代碼中加入

\DB::listen(function($sql,$query){
            dump($sql,$query);
        }); 

四樓:

debugbar
相關文章
相關標籤/搜索