首页 > 后端开发 > php教程 > 如何使用 Laravel 的 Eloquent ORM 检索特定日期范围内的记录?

如何使用 Laravel 的 Eloquent ORM 检索特定日期范围内的记录?

Mary-Kate Olsen
发布: 2024-12-08 07:49:13
原创
646 人浏览过

How to Retrieve Records Within a Specific Date Range Using Laravel's Eloquent ORM?

使用 Laravel 根据日期范围检索记录

为了检索指定日期范围内的记录,Laravel 的 Eloquent ORM 提供了 whereBetween方法。此方法允许您指定列名称和两个日期的数组,代表所需范围的起点和终点。

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

Reservation::whereBetween('reservation_from', [$from, $to])
    ->get();
登录后复制

此查询将检索reservation_from列值介于一月之间的所有预订2018年1月1日和2018年5月2日。

动态范围参数

您还可以使用 Carbon 的 Between 方法动态定义范围的开始和结束日期:

Reservation::all()
    ->filter(function($item) {
        if (Carbon::now()->between($item->from, $item->to)) {
            return $item;
        }
    });
登录后复制

其他查询

  • whereOrBetween:指定附加日期范围
  • whereNotBetween:排除特定日期间隔。

示例:

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

其他Where子句

为了进一步提高灵活性,Laravel 提供了额外的WHERE 子句,包括:

  • whereIn
  • whereNotIn
  • whereNull
  • whereNotNull
  • whereDate
  • whereM上
  • whereDay
  • whereYear
  • whereTime
  • whereColumn
  • whereExists
  • whereRaw

以上是如何使用 Laravel 的 Eloquent ORM 检索特定日期范围内的记录?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板