在使用Laravel时,我们会这样查询:
$user = DB::table('users')->where('name', 'John')->first();
如何查看生成的sql查询?这对于开发过程中的调试非常重要。
谢谢。
答案 0 :(得分:1)
根据this answer,您应该可以使用它来获取上次执行的查询:
$queries = DB::getQueryLog(); // gets a log of all executed queries
$last_query = end($queries); // gets the last one
答案 1 :(得分:0)
您还可以添加此代码段:
Event::listen('illuminate.query', function($sql)
{
var_dump($sql);
});
它将输出您请求中正在执行的所有查询。
答案 2 :(得分:0)
不是直接的答案,因为其他人已经回答了这个问题,但是看一下这个作曲家包,它非常有用,可以显示所有的查询等等。