Laravel Eloquent:獲取模型查詢生成的 SQL 語句

我們有時候想測試一段代碼生產的 SQL 語句,比如:我們想看 App\User::all(); 產生的 SQL 語句,我們簡單地使用路由閉包做個實驗:

Route::get('/test-sql', function() {

    DB::enableQueryLog();

    $user = App\User::all();

    return response()->json(DB::getQueryLog());
});

然後我們在瀏覽器打開 http://www.example.com/test-sql 即可看到 $user = User::all(); 所產生的 SQL 了

[
    {
        query: "select * from `users` where `users`.`deleted_at` is null",
        bindings: [ ],
        time: 1.37
    }
]

如果需要經常查看 SQL 信息,推薦使用 clockwork 這個插件更友好的記錄。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章