我试图在where子句中传递日期数组,但是没有任何值。如何在laravel中的where子句中传递数组值?
我已经尝试过了,但是没有用:
->where('shift_detail.shift_date', '=', date('Y-m-d', $i))
如果我这样设置日期
->where('shift_detail.shift_date', '=', '2018-01-1')
然后在循环中工作,但不工作。
$month = "1";
$year = "2019";
$start_date = "01-" . $month . "-" . $year;
$end_date = date('Y-m-t', strtotime($start_date));
$start_time = strtotime($start_date);
$end_time = strtotime("+1 month", $start_time);
for ($i = $start_time; $i < $end_time; $i += 86400) {
$list[] = date('Y-m-d', $i);
$emp = DB::table('employee_schedule')
->join('shift_detail', 'shift_detail.shift_id', '=', 'employee_schedule.shift_id')
->join('timetable', 'timetable.timetable_id', '=', 'shift_detail.timetable_id')
->where('shift_detail.shift_date', '=', date('Y-m-d', $i))
->where('employee_schedule.employee_personnelno', '=', $pno)
->get();
return $emp;
}
它应该返回$emp
值,其中shift_detail.shift_date
等于日期列表。