laravel5.8(十七)laravel获取上一条执行的sql


Thinkphp框架关于获取上一条执行的sql有封装好的函数getLastSql。

但是目前在使用laravel框架中,我还没有查到有相关的函数。但是laravel提供了其他的方法:

代码如下:

DB::enableQueryLog();
$userin = DB::table('user')
            ->where('personal_id', '=', $data['personal_id'])
            ->where('name', '=', $data['name'])
            ->where('school_id', '=', $data['school_id'])
            ->select('id')
            ->first();
$lastSql = DB::getQueryLog();
var_dump($lastSql);die;

执行的sql必须在

DB::enableQueryLog();

$lastSql = DB::getQueryLog();

之间才能将执行的sql打印出来。

打印的结果是一个数组,包含执行的sql以及执行时间。

有好的建议,请在下方输入你的评论。

欢迎访问个人博客
https://guanchao.site

欢迎访问小程序
在这里插入图片描述


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM