我们写代码操作数据库的时候。经常会遇到一些场景需要打印调试一些复杂的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
0 条评论