laravel mysql日志,Laravel 查看SQL操作记录

方法一:临时打印操作记录

DB::connection()->enableQueryLog(); # 开启执行的日志

执行的sql语句 # 这里是用laravel模型查询的语句

var_dump(DB::getQueryLog()); # 打印模型查询执行的sql语句

方法二:输出SQL信息到日志文件

打开项目文件app/Providers/AppServiceProvider.php

在boot函数中添加以下代码

\DB::listen(function ($query) {

$tmp = str_replace('?', '"'.'%s'.'"', $query->sql);

$qBindings = [];

foreach ($query->bindings as $key => $value) {

if (is_numeric($key)) {

$qBindings[] = $value;

} else {

$tmp = str_replace(':'.$key, '"'.$value.'"', $tmp);

}

}

$tmp = vsprintf($tmp, $qBindings);

$tmp = str_replace("\\", "", $tmp);

\Log::info(' execution time: '.$query->time.'ms; '.$tmp."\n\n\t");

}

);

保存,再次执行SQL操作,SQL操作就会记录到Laravel的日志中,日志目录位于storage/logs

你可能感兴趣的:(laravel,mysql日志)