我们写代码操作数据库的时候。经常会遇到一些场景需要打印调试一些复杂的sql,laravel框架如果是查询构造器写的链式操作,可以用->tosql()方法打印sql语句,但是如果用的是orm模型呢,百度了很多,发现要么用不了,要么很麻烦,今天分享一种使用laravel日志打印sql语句的方法


DB::connection()->enableQueryLog();
$user=new \App\Models\User();
$data=$user->select('uid', 'nickname', 'image', 'industry', 'birthday', 'height')->where('uid',$uid)->offset($page)->limit($orderpage)->get()->toarray();
$log = DB::getQueryLog();
dd($log[0]['query']);

如此即可打印sql语句。
记着首先

use Illuminate\Support\Facades\DB;

这个应该不用多说
另外还有一种方法使用Laravel的调试工具debug bar

分类: laravelPHP

发表评论

电子邮件地址不会被公开。 必填项已用*标注