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中文網其他相關文章!