dougaodi8895 2014-06-21 07:05
浏览 42
已采纳

Laravel 4:如何显示SQL查询?

In my app/config/app.php file, I have turned on 'debug'=>true. I have tried

//run eloquent functions
$allMessages = Messages::with('User')->whereIn('conv_id',$conv_id)->orderBy('created_at','aadesc')->take(10);

$q= DB::getQueryLog();
dd($q);

but it returns an empty array. So I guess it is useless to do end($q) as suggested.

I have also tried the accepted answer to a question and added it to the end of my routes file but nothing happened. I'm still new to Laravel and need some guidance. Thank you!

  • 写回答

1条回答 默认 最新

  • doupin8555 2014-06-21 07:15
    关注

    A popular method is to monitor the Event for Eloquent, and output any queries run on the database as you are going along:

    Event::listen('illuminate.query', function($query, $params, $time, $conn) 
    { 
        dd(array($query, $params, $time, $conn));
    });
    
    $allMessages = Messages::with('User')->whereIn('conv_id',$conv_id)->orderBy('created_at','aadesc')->take(10);
    

    That will output the query that is run.

    Another option is to use a Laravel4 Debugger package, which automatically shows you the queries run: https://github.com/barryvdh/laravel-debugbar

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 乌班图ip地址配置及远程SSH
  • ¥15 怎么让点阵屏显示静态爱心,用keiluVision5写出让点阵屏显示静态爱心的代码,越快越好
  • ¥15 PSPICE制作一个加法器
  • ¥15 javaweb项目无法正常跳转
  • ¥15 VMBox虚拟机无法访问
  • ¥15 skd显示找不到头文件
  • ¥15 机器视觉中图片中长度与真实长度的关系
  • ¥15 fastreport table 怎么只让每页的最下面和最顶部有横线
  • ¥15 R语言卸载之后无法重装,显示电脑存在下载某些较大二进制文件行为,怎么办
  • ¥15 java 的protected权限 ,问题在注释里