Tất cả các tác vụ cần thực hiện sẽ được đặt trong method schedule của class app/Console/Kernel.php
.
Step 1: Tạo mới một Command.
Mở command line với thư mục gốc của dự án và chạy lệnh:
php artisan make:command DemoCron --command=demo:cron
File tương ứng sẽ được tạo: app/Console/Commands/DemoCron.php
.
Các tác vụ của Cron job sẽ được thực hiện trong method handle()
.
Step 2: Đăng ký làm công cụ lập lịch tác vụ
Cần xác định các lệnh của chúng ta trên tệp Kernel.php
với thời gian khi bạn muốn chạy lệnh của mình
Một số các tùy chọn tần suất trong lịch thực hiện:
(Các tuỳ chọn nằm trong vendor\laravel\framework\src\Illuminate\Console\Scheduling\ManagesFrequencies.php )
->everyMinute(); Run the task every minute
->everyFiveMinutes(); Run the task every five minutes
->everyTenMinutes(); Run the task every ten minutes
->everyFifteenMinutes(); Run the task every fifteen minutes
…………………………..
Bước 3: Chạy Cron job
Để chạy đơn lẻ 1 Cron job:
(Thay thế demo:cron
bằng tên của cron muốn chạy)
php artisan demo:cron
Chạy tất cả Cron job được khai báo trong schedule
của Kernel.php
php artisan schedule:run
Tham khao thêm tại: https://laravel.com/docs/8.x/scheduling