Laravel打印Eloquent生成的完整SQL

开发调试中,经常需要查看Eloquent生成的SQL语句,以便排查错误,具体做法如下:

引入:use Illuminate\Support\Facades\DB;

DB::connection()->enableQueryLog(); // 开启QueryLog

$workLogs = WorkLog::where(function ($query) use ($request) {
    if ($request->has('keyword')) {
        $query->where('content', 'like', "%{$request->keyword}%");
    }
    if ($request->has('department_id')) {
        $query->with('user', function($userQuery) {
            $userQuery->where('department_id', $request->department_id);
        });
    }
})->orderByDesc('created_at')->paginate();

dd(DB::getQueryLog());

本文为“老吴笔记”的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注