📅  最后修改于: 2023-12-03 15:38:19.362000             🧑  作者: Mango
在 Laravel 中,如果需要获取上次执行的查询语句,可以通过 DB::getQueryLog()
方法来实现。
在 .env
文件中将 APP_DEBUG=true
,Laravel 就会自动开启查询日志。
在需要获取上次执行的查询语句的代码块中,执行对数据库的操作,例如:
$users = DB::table('users')->get();
通过 DB::getQueryLog()
方法获取查询日志:
$queries = DB::getQueryLog();
查询日志中最后一项即为上次执行的查询语句:
$lastQuery = end($queries)['query'];
// 开启查询日志
config(['app.debug' => true]);
// 执行查询
$users = DB::table('users')->get();
// 获取查询日志
$queries = DB::getQueryLog();
// 获取上次执行的查询语句
$lastQuery = end($queries)['query'];
echo $lastQuery;
// 输出:select * from `users`
在 Laravel 中,获取上次执行的查询语句非常简单,只需要开启查询日志、执行查询以及通过 DB::getQueryLog()
方法获取结果即可。