と というテーブルに 2 つの列がありexpired(boolean)
ますexpire_date(timestamp)
。foreach を使用しeveryMinute()
て列の値を更新しているときに、クーポンの有効期限が切れているかどうかを確認するスケジューラを実行しています。expired
私はこれが奇妙だと思った、または参照渡しのものを台無しにしている可能性があります..ここにコードがあります
$schedule->call(function () {
CoursePromotion::where('expired',0)
->whereDate('expire_date','<',Carbon::today())
->update(['expired' => 1]);
})->everyMinute();
これが結果です。
更新前DB
php artisan schedule:run
コマンド実行後のDB
expire_date が今日の日付で更新された理由を誰か教えてもらえますか?