您可以使用 Eloquent 的 whereBetween 方法来查询两个日期之间的关系。此方法采用两个值的数组作为其参数,其中第一个值是开始日期,第二个值是结束日期。例如:
<?php $from = date('2018-01-01'); $to = date('2018-05-02'); Reservation::whereBetween('reservation_from', [$from, $to]) ->get();
此查询将选择 booking_from 列在开始日期和结束日期之间的所有预订。
您还可以使用过滤器方法动态添加日期范围。例如:
<?php Reservation::all() ->filter(function ($item) { if (Carbon::now()->between($item->from, $item->to)) { return $item; } });
您可以通过链接 where 方法来使用多个条件。例如:
<?php Reservation::whereBetween('reservation_from', [$from1, $to1]) ->orWhereBetween('reservation_to', [$from2, $to2]) ->whereNotBetween('reservation_to', [$from3, $to3]) ->get();
Laravel Eloquent提供了其他有用的where子句,包括:
对于更多信息,请参阅 Laravel 文档 [Where Clauses](https://laravel.com/docs/eloquent/queries) 和 [whereBetween](https://laravel.com/docs/eloquent/queries#where-clauses) ).
以上是如何使用 Laravel Eloquent 查询两个日期之间的数据?的详细内容。更多信息请关注PHP中文网其他相关文章!