Laravel $q->where() 日期之间:重复项目的优化方法
检索设置为续订或重复的项目在特定时间段内,您可以将 $q->where() 方法与自定义函数一起使用。然而,在 Laravel 中有更有效的方法来实现这一点。
考虑使用 whereBetween() 方法,它允许您为特定列指定一系列值。在这种情况下,您可以将其与 recur_at 列一起使用:
<code class="php">$projects = Project::whereBetween('recur_at', [Carbon::now(), Carbon::now()->addWeek()]) ->where('status', '<', 5) ->where('recur_cancelled', '=', 0) ->get();</code>
Carbon 包提供直观的日期操作功能。通过使用其 addWeek() 方法,您可以轻松指定所需的日期范围。
或者,您可以链接您的 where 条件,而无需自定义函数:
<code class="php">$projects = Project::where('recur_at', '>', Carbon::now()) ->where('recur_at', '<', Carbon::now()->addWeek()) ->where('status', '<', 5) ->where('recur_cancelled', '=', 0) ->get();</code>
这种方法更加简洁明了。
通过使用这些方法,您可以高效地检索符合您特定条件的项目,并确保及时发送提醒电子邮件以便及时重复。
以上是如何使用 whereBetween() 和 Carbon 检索 Laravel 中的重复项目?的详细内容。更多信息请关注PHP中文网其他相关文章!