0

laravel forgeのダッシュボードで毎日設定し、カーネルクラスファイルで実行するコマンドを設定しているため、laravel forgeのタスクスケジューラがカーネルクラスファイルの設定をオーバーライドするかどうかを知りたいです。このような月の最初だけです

$schedule->command('log:demo')->daily()->when(function(){
            if(Carbon::now()->toDateString() == Carbon::now()->startOfMonth()->toDateString())
            {
                return true;
            }
});

ここに Daily() 関数を配置して、月の最初かどうかを毎日チェックします。関数が true を返さない場合は実行されないことがわかっていますが、laravel forge では毎日実行されます。forge は見ていないと思いますこのファイル ここに画像の説明を入力

4

1 に答える 1

4

schedule:run を 毎分実行する - これは、カーネルに何があるかをチェックし、その分に何かを実行する必要がある場合は、その特定のタスク (ジョブ) を実行します。

たとえば、1 時間に 1 回実行されるタスクと、1 日に 1 回実行される別のタスクがあるとします。Forge でスケジュールされたタスクが 1 つだけ必要です。

protected function schedule(Schedule $schedule)
{
     $schedule->command('report:hourly')->hourly();
     $schedule->command('report:daily')->daily();
}

コマンドがカーネルに登録されていることを確認します。

 protected $commands = [
     Commands\Hourly::class,
     Commands\Daily::class,
];
于 2015-12-25T00:31:08.867 に答える