0

私はlaravelスケジューラを使用しています。特定の条件が満たされた場合にサブスクリプションステータスを期限切れに設定したいのですが、これをバックグラウンドで毎分実行する必要もあります。 php artisan schedule:work を実行した後、コードが実行されない..以下は私のコードで、App/Console/Kernel.php (スケジュール関数)

  $schedule->call(function () {
        $checkSubStatus = UserSubscription::where('status', 'approved')->where('users_id', auth()->user()->id)->first();
        $currentTime = Carbon::now();
        if($currentTime > $checkSubStatus->expiry_date) {
            $checkSubStatus->update([
                'status' => 'expired'
            ]);
        }
    })->everyMinute();

しかし、DB::table('users_subscription')->delete(); のように、テーブルを削除するだけで機能します。助けてください。

4

1 に答える 1