您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何使用Laravel和Eloquent在两个日期之间查询?

如何使用Laravel和Eloquent在两个日期之间查询?

$from = date('2018-01-01');
$to = date('2018-05-02');

Reservation::whereBetween('reservation_from', [$from, $to])->get();

在某些情况下,您需要动态添加日期范围。根据@Anovative的评论,您可以执行以下操作:

Reservation::all()->filter(function($item) {
  if (Carbon::Now->between($item->from, $item->to) {
    return $item;
  }
});

如果您想添加更多条件,则可以使用orWhereBetween。如果您想排除日期间隔,则可以使用whereNotBetween

Reservation::whereBetween('reservation_from', [$from1, $to1])
  ->orWhereBetween('reservation_to', [$from2, $to2])
  ->whereNotBetween('reservation_to', [$from3, $to3])
  ->get();

其他有用的where子句:whereInwherenotinwhereNullwhereNotNullwhereDatewhereMonthwhereDaywhereYearwhereTimewhereColumnwhereExistswhereRaw

其他 2022/1/1 18:23:47 有535人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶