Laravel 中输出 SQL 语句的到 log 日志

在AppServiceProvider.php中的boot方法中添加如下代码 即可

public function boot()
{
    DB::listen(function($query) {
        $tmp = str_replace('?', '"'.'%s'.'"', $query->sql);
        $tmp = vsprintf($tmp, $query->bindings);
        $tmp = str_replace("\\","",$tmp);
        Log::info($tmp."\n\n\t");
      });
}

执行与数据库相关的操作会在 storage\logs\laravel.log 文件中看到记录执行的sql语句

你可能感兴趣的:(Laravel 中输出 SQL 语句的到 log 日志)