
PHP : การทำ Cron Jobs
Cron Jobs คือการตั้งเวลาให้มีการ ทำการคำสั่งในช่วงเวลาที่เรากำหนด เช่น การตั้งค่าส่ง Email หรือ ทำการ คำนวนอย่างใดอย่างหนึ่งบนเว็บของเรานะครับ
ส่วนมากจะนำมาใช้ในการ BackUp DB หรือ ส่ง จดหมายข่าวต่างๆ เป็นต้น การทำงานก็ควรจะตั้งไว้ตอนที่มีคนใช้น้อยๆ เช่น ตี 3 ตี 4 เป็นต้นนะครับ
แต่ปัญหาที่ผมเจอมาคือ เมื่อใส่แล้วมันไม่ทำงานนะครับ หลายๆ คนคงเจอปัญหาแบบเดียวกับผมนี้
ผมเลยถามผู้รู้ พี่วิน จาก ThaiCreate.com นะครับ ได้ให้คำแนะนำมาว่าให้ใช้ wget และ ตามด้วย URL ของที่เราจะคำนวนได้เลย
สุดท้ายแล้วทำงานได้จริงๆ ครับ มาดูกันครับ จากตัวอย่างนี้ ผมตั้งไว้ให้คำนวน ทุก ตี 3 โดยทำการ Backup DB ของเว็บผมเองนะครับ ค่าที่กำหนดจะเป็นดังนี้ครับ
รูปแบบของคำสั่ง cronjobs มีทั้งหมด 6 อันดังนี้ครับ
1 = Minute มีค่า 0 - 59 เวลาเป็นนาที
2 = Hour มีค่า 0 - 23 เวลาเป็นชั่วโมง
3 = Day of Month มีค่า 1 - 31 เวลาเป็นวัน
4 = Month มีค่า 1 - 12 เวลาเป็นเดือน
5 = Day Of Week มีค่า 0 - 7 วันของแต่ละสัปดาห์ (โดย 0 กับ 7 คือวันอาทิตย์)
6 = Command เราใส่คำสั่งที่ต้องการให้ Cron Jobs ทำงาน
Minute | Hour | Day of Month | Month | Day of Week | Command |
0 | 3 | * | * | * | wget http://www.siamfocus.com/backup_db.php |
backup_db.php คือ File ที่เราเขียนไว้สำหรับ Backup Database นะครับ
อีกอันที่ผมทดสอบผ่านเมื่อกี๊คือ ทำการส่ง Email ทุกเที่ยงคืน นั่นก็คือทุกวันจันทร์ นั้นเองนะครับ ส่งอาทิตย์ละครั้ง
Minute | Hour | Day of Month | Month | Day of Week | Command |
1 | 0 | * | * | 1 | wget http://www.siamfocus.com/send_email.php |
ลองเอาไปประยุกต์ใช้ดูนะครับ
มาเป็นเพื่อนกันครับ บนช่องทาง Social ด้านล่างนี้ครับ
--------------------------► LINE@ : @siamfocus.com
► Facebook : fanpage.siamfocus
► Twitter (X) : siamfocus
► Linkedin : taam-siamfocus
► Instagram : iamtaam
► Youtube : SiAMFOCUS
► Tiktok : @taamsiamfocus
--------------------------