在laravel 5中打印一个mysql查询

时间:2015-03-17 13:13:32

标签: mysql laravel-5

我的控制器上有以下代码用于更新记录

    $inforequest = Info::find($id);
    $inforequest->infoname = $inforequest->infoname;
    $inforequest->infotitle = $inforequest->infotitle;
    $inforequest->infotag = $inforequest->infotag;
    $inforequest->infogroup = $inforequest->infogroup;
    $last_query = $inforequest->save();
    return redirect('auth/getallinfo');

但它没有更新数据以及没有给出任何错误

如何打印mysql查询???

提前致谢!!

2 个答案:

答案 0 :(得分:0)

您可以使用toSql()方法。

 $inforequest = Info::find($id)->toSql();
 dd($inforequest);

答案 1 :(得分:0)

为了调查我的查询,我在 AppServiceProvider 中的 boot()函数中放入了数据库的监听:

class AppServiceProvider extends ServiceProvider
{
    public function boot()
    {
        [...]
        DB::listen(function ($query) {
            echo '<br>_____________<br>';
            var_dump($query->sql);
            var_dump(($query->time/1000)." sec");
            echo '<br>-------------<br>';
        });
    }
}

我曾经打印出查询和查询的时间(以秒为单位) 你也可以var_dump整个$查询。