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”

    原文作者:SQL
    原文地址: https://blog.csdn.net/hu_feng903/article/details/76177419
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞