Laravel 查询日期范围内的日期
在 Laravel 中,您可以使用 whereBetween 方法来查询模型中包含日期或日期的记录日期时间列落在指定范围内。这对于检索在给定时间内到期或续订的记录等任务非常有用。
原始问题:
作者最初寻求查询以选择到期的项目在接下来的 7 天内重复或续订,使用 where 方法检查大于特定时间戳的日期。
已解决的解决方案:
但是,作者发现他们需要查询大于当前日期减去 7 天的日期。这是使用 whereBetween 方法实现的,如下所示:
<code class="php">$projects = Project::whereBetween('recur_at', [ Carbon::now(), Carbon::now()->addWeek() ]) ->where('status', '<', 5) ->where('recur_cancelled', '=', 0) ->get();</code>
改进的查询:
第二个解决方案是通过使用 where 方法直接链接条件来改进的:
<code class="php">$projects = Project::where('recur_at', '<=', Carbon::now()->addWeek()) ->where('recur_at', '!=', "0000-00-00 00:00:00") ->where('status', '<', 5) ->where('recur_cancelled', '=', 0) ->get();</code>
这简化了查询并消除了对 function(q) 语法的需要。
以上是如何在 Laravel 中查询某个日期范围内的记录?的详细内容。更多信息请关注PHP中文网其他相关文章!