Hướng dẫn sử dụng Cron Job trong Laravel 5.8

364
Hướng dẫn sử dụng Cron Job

Câu hỏi đặt ra tại sao chúng ta phải dùng Cron Job? Đơn giản vì nhiều khi chúng ta cần gửi thông báo hoặc gửi email tự động cho người dùng để cập nhật các property hoặc products. Vì vậy, tại thời điểm đó, bạn có thể xác định một số logic cơ bản cho mỗi ngày, giờ,… có thể chạy và gửi email. Bài viết hôm nay mình sẽ hướng dẫn sử dụng Cron Job trong Laravel 5.8 các bạn nhé.

  Hướng dẫn chạy Laravel Tinker ngay trên trình duyệt
  Tại sao Laravel là framework tốt nhất 2019?

Tạo Command

Đầu tiên chúng ta cần tạo các lệnh tùy chỉnh. Các lệnh tùy chỉnh sẽ thực thi với các cron job trên task scheduling.

Ở đây mình sẽ ví dụ về việc update trạng thái của chứng thư số. Mỗi ngày sẽ kiểm tra xem những chứng thư nào đã hết hạn và chuyển trang thái cho nó:

1 file command được tạo trong file app/Console/Commands/StatusUpdate.php

Phần xử lý việc update chứng thư sẽ được viết vào trong function handle() như sau:

Đăng ký trên Task Scheduler

Tiếp theo chúng ta cần xác định thời gian để chạy các command trong trong file Kernel.php.

Hướng dẫn sử dụng Cron Job

Ở ví dụ này mình cho chạy vào lúc 0h hằng ngày nên sẽ dùng daily().

Vào app/Console/Kernel.php để cấu hình:

Bây giờ cron job bằng lệnh:

Cuối cùng để nó có thể chạy tự động, ta đặt lịch thực hiện cho từng hệ điều hành riêng. Ở đây mình dùng HĐH Linux nên lệnh sẽ là:

Tổng kết

Vậy là mình đã hướng dẫn sử dụng Cron Job trong Laravel 5.8 cho các bạn trong bài viết này. Hy vọng các bạn sẽ thấy bổ ích. Cảm ơn các bạn đã theo dõi bài viết!

Nguồn tham khảo:

https://itsolutionstuff.com/post/task-scheduling-with-cron-job-in-laravel-58example.html

Có thể bạn quan tâm:

Xem thêm viêc làm PHP Developer trên TopDev

TopDev via viblo.asia

  Repository là gì và cách sử dụng nó trong ứng dụng Laravel
  Tìm hiểu thêm về Laravel - Laravel còn giấu diếm chúng ta những gì?