Laravelを使用してスケジュールされたタスクを実装する方法

不言
リリース: 2023-04-01 06:26:02
オリジナル
1528 人が閲覧しました

この記事では、Laravel でスケジュールされたタスクを実装するためのサンプルコードを主に紹介します。編集者が非常に優れていると感じたので、参考として共有します。エディターに従って見てみましょう

はじめに

スケジュールされたタスクは、バックエンド開発プロセスにおける非常に一般的な要件であり、データ統計やスパム情報によく現れます。お掃除などのシーンに。 Laravel はスケジュールされたタスク ツールの完全なセットを提供するため、ロジックを完成させることだけに集中すればよく、残りの基本的な作業は Laravel が処理します。

基本的な使い方

コマンドの生成

php artisan make:command AreYouOK
ログイン後にコピー

5.2 以前バージョンの場合、このコマンドは `phpArtisan make:console xxx`

Edit command

`app/Console/Commands/AreYouOK.php` ファイルを編集して変更します。次のように いくつかの場所:

... ...
protected $signature = 'areyou:ok'; // 命令名称
protected $description = '雷军,科技圈最会唱歌的男人'; // 命令描述,没什么用

public function __construct()
{
  parent::__construct();
  // 初始化代码写到这里,也没什么用
}
public function handle()
{
  // 功能代码写到这里
}
ログイン後にコピー

登録コマンド

`app/Console/Kernel.php` ファイルを編集します新しい生成されたクラスを登録します:

protected $commands = [
  \App\Console\Commands\AreYouOK::class,
];
ログイン後にコピー

呼び出しロジックを作成します:

protected function schedule(Schedule $schedule)
{
  $schedule->command('areyou:ok')
       ->timezone('Asia/Shanghai')
       ->everyMinute();
}
ログイン後にコピー

上記のロジックは、1 分ごとに呼び出すことです。 Laravel は、1 分から 1 年までのさまざまな長さの時間関数を提供しており、これらを直接呼び出すことができます。

この Laravel プロジェクトをシステムの cron に登録します

`/etc/crontab` ファイルを編集し、次のコードを追加します:

* * * * * root /usr/bin/php /var/www/xxxlaravel/artisan schedule:run >> /dev/null 2>&1
ログイン後にコピー

上記の行 `/var/www/xxxlaravel` を実際のパスに変更する必要があります。

fire

cron を再起動してこの機能を有効にします: `systemctl restart crond.service`、完了です。

以上がこの記事の全内容です。その他の関連コンテンツについては、PHP 中国語 Web サイトをご覧ください。

関連する推奨事項:

Laravel フレームワーク データベースでの CURD 操作とコヒーレント操作の分析について

以上がLaravelを使用してスケジュールされたタスクを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート