Laravel查询多个or或and

在 laravel查询 数据的时候经常会遇到相对复杂一些的查询条件,甚至是嵌套很多层的情况。Laravel框架的模型操作也是比较灵活,当我们遇到多个条件or,多个条件and等组合条件时,如何操作?

查询条件:(A and B)OR(C and D):

$test->where(function ($query) {
$query->where(function ($query) {
$query->where('id', 0)->where('create_time', '<', strtotime('-2 day')); })->orWhere(function ($query) {
$query->where('id', '>', 0)->where('create_time', '<', strtotime('-3 day'));
})->get();

可以以此类推:(A or B)AND(C or D):

$test->where(function ($query) {
$query->where(function ($query) {
$query->where('id', 0)->orWhere('create_time', '<', strtotime('-2 day')); })->where(function ($query) {
$query->where('id', '>', 0)->orWhere('create_time', '<', strtotime('-3 day'));
})->get();

0 评论
内联反馈
查看所有评论