Dengan perkembangan teknologi yang berterusan, operasi dan penyelenggaraan automatik telah menjadi pilihan semakin banyak perusahaan, dan kesesakan operasi dan penyelenggaraan manual secara beransur-ansur dipecahkan. Dalam proses operasi dan penyelenggaraan automatik, tugas berjadual adalah kaedah yang biasa digunakan Dengan menetapkan tugas berjadual, operasi tertentu boleh dilakukan tepat pada masanya. Namun, kadangkala kita perlu membatalkan tugasan berjadual yang telah ditetapkan Apakah yang perlu kita lakukan dalam kes ini? Artikel ini akan memperkenalkan cara membatalkan tugas berjadual dalam PHP.
Mula-mula kita perlu memahami beberapa konsep asas. Menyediakan tugas berjadual biasanya dilakukan menggunakan alat seperti Crontab (dalam Linux) atau Penjadual Tugas (dalam Windows). Alat ini membolehkan kami menetapkan tugas berjadual dengan mudah, seperti membersihkan log pada pukul 3 pagi setiap hari, membuat sandaran pangkalan data setiap malam Jumaat, dsb.
Dalam PHP, kami menggunakan pustaka pihak ketiga sumber terbuka-PHP Cron Scheduler. Ia menyediakan satu set kelas PHP yang boleh melaksanakan fungsi yang sama seperti CronTab (iaitu, penjadualan tugas PHP), dan boleh melaksanakan tetapan tugas pemasaan yang lebih terperinci. Contohnya, pelbagai mod penjadualan yang kompleks seperti setiap minit, setiap jam dan setiap minggu boleh dilaksanakan.
Jadi, bagaimana untuk membatalkan tugas yang dijadualkan dalam PHP?
Dalam pelayan Linux, kita boleh memasukkan arahan berikut dalam baris arahan untuk membuka fail konfigurasi CronTab:
rreeeMasukkan mod edit Selepas itu, anda boleh melihat semua tugas berjadual yang ditetapkan oleh pengguna semasa (biasanya pengguna root). Kami boleh mencari tugas yang sepadan seperti yang diperlukan, dan kemudian memadam atau mengulasnya.
Sebagai contoh, berikut ialah contoh pembersihan log setiap awal pagi:
crontab -e
Kami boleh memadam atau mengulasnya dalam mod edit, contohnya:
0 3 * * * /usr/bin/php /var/www/html/clean_log.php
Selepas menyimpan pengubahsuaian, fail CronTab dikemas kini secara automatik. Pada masa ini, tugas berjadual yang ditetapkan telah berjaya dibatalkan.
Dalam hal menggunakan pustaka PHP Cron Scheduler untuk menyediakan tugas berjadual, kami juga boleh menggunakan kaedah yang disediakan oleh perpustakaan untuk membatalkan tugas Berjadual. Ini perlu dilaksanakan dalam kod PHP. Langkah-langkah khusus adalah seperti berikut:
1) Perkenalkan pustaka PHP Cron Scheduler:
#0 3 * * * /usr/bin/php /var/www/html/clean_log.php
2) Instantiate CronScheduler:
require_once('path/to/php-cron-scheduler/CronScheduler.php');
3) Panggilremove()
Kaedah untuk memadam tugasan yang sepadan:
$scheduler = new Cron\CronScheduler();
Dalam kod di atas, kami menggunakan kaedah getTask()
untuk mendapatkan tugas yang perlu dibatalkan, dan kemudian gunakan kaedah remove()
untuk memadam tugas.
Perlu diambil perhatian bahawa $taskName
dalam pustaka PHP Cron Scheduler biasanya nama yang disesuaikan apabila menambah tugasan, anda perlu menentukan nama yang betul untuk mencari tugasan yang sepadan.
Kesimpulan
Melalui dua kaedah di atas, kami boleh membatalkan tugas berjadual yang telah ditetapkan dalam pelayan Linux atau kod PHP untuk menghentikan pelaksanaan automatik. Dalam proses pembangunan sebenar, anda boleh memilih untuk menggunakan kaedah yang berbeza mengikut situasi sebenar. Pada masa yang sama, apabila menggunakan tugas berjadual, anda perlu memberi perhatian kepada peraturan pemasaan tugas, keputusan pelaksanaan, output log dan isu lain untuk memastikan kemajuan operasi dan penyelenggaraan automatik berjalan lancar.
Atas ialah kandungan terperinci php membatalkan tugas yang dijadualkan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!