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 中国語 Web サイトの他の関連記事を参照してください。