ホームページ > 記事 > PHPフレームワーク > laravelのタスクスケジューリング(タスクのスケジュール実行)の使い方を詳しく解説
次のコラム Laravel チュートリアル では、laravel を使ったタスクスケジューリング (タスクの定期実行) について紹介します。
laravel には非常に強力な関数があり、サーバーに cron エントリを追加するだけで、すべての laravel タスクを定期的に実行できます。
これで、次のデータ テーブルができました。
cron テーブルの cron フィールドの値を 1 分ごとに 1 ずつ増加させたいのですが、次の手順が必要です:
##1.laravel コードを App\Console\Kernel.php
protected function schedule(Schedule $schedule) { $schedule->call(function () { DB::table('cron')->increment('cron'); })->everyMinute(); }
2 に記述します。サービスの / var/spool/cron/root ファイルにコードを追加します。
Note: サービスを編集するには、vim エディタを使用するのが最善です。ファイルはここにあります。winscp を使用してファイルを編集すると、何かが表示されます。タスクの実行に問題があります。
vim チュートリアルのリンクの使用: http://www.cnblogs.com/zzdylan/p/5941706.htmlコマンド ラインにcrontab -eと入力し、次の行を追加します。 code
* * * * * /usr/local/php/bin/php /data/wwwroot/test/artisan schedule:run 1>> /dev/null 2>&1コマンド ラインに
crontab -u root -lと入力します。システムは
## を読み取るため、cron サービスを再起動する必要はありません。 #/var/spool/cron 毎分 ディレクトリ内のファイル。
次の構成に従っても実行できない場合は、次の方法を使用して問題をトラブルシューティングできます。コマンドでは絶対パスを使用します。たとえば、
phpの代わりに /usr/local/php/bin/php を使用し、/data/wwwroot/test/artisan を使用します。 artisan の代わりに。 それでも絶対パスが実行されない場合は、コマンド ラインに
/usr/local/php/bin/php /data/wwwroot/test/artisanschedule:run 1>> を直接入力します。 /dev/null 2>&1を実行して確認してください 実行されない場合はlaravelのコードの問題です 実行される場合は環境変数の問題です パスを確認してください。 php の場所がわからない場合は、コマンドラインに what php と入力すると、php がインストールされている場所を尋ねるメッセージが表示されます。 プログラミング関連の知識について詳しくは、
プログラミング教育以上がlaravelのタスクスケジューリング(タスクのスケジュール実行)の使い方を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。