ThinkPHP6 penjadualan tugas berjadual: pelaksanaan tugas berjadual
1. Pengenalan
Dalam proses pembangunan aplikasi web, kita sering menghadapi situasi di mana tugas berulang tertentu perlu dilaksanakan dengan kerap. ThinkPHP6 menyediakan fungsi penjadualan tugas berjadual yang berkuasa, yang boleh memenuhi keperluan tugas berjadual dengan mudah. Artikel ini akan memperkenalkan cara menggunakan penjadualan tugas berjadual dalam ThinkPHP6 dan menyediakan beberapa contoh kod untuk membantu memahami.
2. Konfigurasikan tugas berjadual
namespace appcommandCron; use thinkconsoleCommand; use thinkconsoleInput; use thinkconsoleOutput; class Test extends Command { protected function configure() { $this->setName('cron:test')->setDescription('This is a test command.'); } protected function execute(Input $input, Output $output) { // 这里是定时任务要执行的代码 $output->writeln('This is a test command.'); } }
Dalam kod di atas, kami mencipta kelas Ujian yang mewarisi daripada kelas Perintah dan mengatasi kaedah konfigurasi dan laksana. Dalam kaedah konfigurasi, kami memberikan arahan ini nama cron:test dan penerangan "Ini ialah arahan ujian." Dalam kaedah laksana, kod yang akan dilaksanakan oleh tugas yang dijadualkan ditulis Di sini, mesej hanya dicetak.
namespace appconsole; use thinkconsoleCommand; use thinkconsoleInput; use thinkconsoleOutput; use thinkconsoleSchedule; class Cron extends Command { protected function configure() { $this->setName('cron')->setDescription('Task schedule for ThinkPHP6.'); } protected function execute(Input $input, Output $output) { $schedule = new Schedule(); // 这里添加定时任务 $schedule->command('cron:test')->everyMinute(); $schedule->run(); } }
Dalam kod di atas, kami mencipta kelas Cron yang mewarisi daripada kelas Perintah dan mengatasi kaedah konfigurasi dan laksana. Dalam kaedah konfigurasi, kami menentukan cron nama dan penerangan "Jadual tugas untuk ThinkPHP6 untuk arahan ini. Dalam kaedah pelaksanaan, kami mencipta contoh Jadual dan menambah tugas berjadual menggunakan kaedah arahannya. Dalam contoh ini, kami menetapkan tugas yang dijadualkan untuk dilaksanakan setiap minit.
3. Jalankan tugas berjadual
Untuk menjalankan tugas berjadual, kami boleh melaksanakan arahan berikut pada baris arahan:
php think cron
Arahan ini akan melaksanakan jadual tugas yang kami takrifkan dalam fail Cron.php.
4. Contoh penjadualan tugas berjadual
Berikut adalah beberapa contoh penjadualan tugas berjadual:
Laksanakan tugasan setiap minit
$schedule->command('cron:test')->everyMinute();
Laksanakan tugasan pada jam 0 pagi
setiap hari$schedule->command('cron:test')->daily();
$schedule->command('cron:test')->weekly()->sundays();
Atas ialah kandungan terperinci Penjadualan tugas berjadual ThinkPHP6: pelaksanaan tugas berjadual. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!