laravel 中获取执行的sql语句

1.通过listen方法实现,一般是作为监听事件,加到服务里面。每次执行sql,输出对应的执行语句
5.4版本直接这么使用
DB::listen(function($sql, $bindings, $time) {
echo ‘SQL语句执行:’.$sql.’,参数:’.json_encode($bindings).’,耗时:’.$time.’ms’;
});


5.4之前版本
DB::listen(function($sql, $bindings, $time) {
echo ‘SQL语句执行:’.$sql.’,参数:’.json_encode($bindings).’,耗时:’.$time.’ms’;
});

具体信息可以参考:http://laravelacademy.org/post/854.html

2.也可以使用
DB::enableQueryLog();
执行语句
dd(DB::getQueryLog());


可以参考:https://stackoverflow.com/questions/27753868/how-to-get-the-query-executed-in-laravel-5-dbgetquerylog-returning-empty-arr

3.使用composer安装

"barryvdh/laravel-debugbar": "^2.0"

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试

关闭