laravel的orm中when的使用(可以节省很多判断的代码哦)
参考:https://blog.csdn.net/zhezhebie/article/details/80281499
https://www.cnblogs.com/x-x-j/p/8397939.html
偶然间发现laravel有when的使用,这个其实说简单点就是查询数据库前做了判断,之前不知道当遇到whereIn和where时候,只能写很多冗余代码,现在记录下
// 下面这个代码when后面跟的第一个参数是true和false,例子是true,所以执行的是前面的匿名函数,同时要用use传参进去才行哦,
// 第二个匿名就是否则执行的意思,
$status = 1;
$examList = Exams::when($status == 1,function ($query) use ($categoryId){
$query->whereIn('category_id',$categoryId);
},function ($query) use ($categoryId2){
$query->whereIn('category_id',$categoryId2);
})->select('examid','exam','question_sort')->get();
此刻我去优化我那渣渣代码去啦~