欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

了解php定时计划任务的实现原理

程序员文章站 2022-03-30 22:43:58
...
  1. ignore_user_abort(); //即使Client断开(如关掉浏览器),PHP脚本也可以继续执行.
  2. set_time_limit(0); // 执行时间为无限制,php默认的执行时间是30秒,通过set_time_limit(0)可以让程序无限制的执行下去
  3. $interval=60*5; // 每隔5分钟运行
  4. do{
  5. $fp = fopen('test.txt','a');
  6. fwrite($fp,'test');
  7. fclose($fp);
  8. sleep($interval); // 等待5分钟
  9. }while(true);
  10. ?>
复制代码

只要运行上面的页面,然后关掉,程序就会一直运行下去。

在linux中有更简单的crontab命令。

crontab命令的功能是在一定的时间间隔调度一些命令的执行。

crontab 使用方法: crontab [ -e | -l | -r ] 文件名 -e:编辑任务 -l:显示任务信息 -r:删除定时执行任务信息

crontab的格式: * * * * * Command 分 时 日 月 星期 要运行的命令

crontab的例子:

  1. */5 * * * * lynx http://bbs.it-home.org

  2. 每5分钟访问一次 bbs.it-home.org
  3. 0 8 * * * lynx http://bbs.it-home.org

  4. 每天早上8点访问 bbs.it-home.org
  5. 0 10 6 * 1-5 lynx http://bbs.it-home.org

  6. 每个月的6号和每个礼拜的星期一到星期五的早上10点访问 bbs.it-home.org
  7. 0 5 7 8 * lynx http://bbs.it-home.org

  8. 8月7日早上5点访问 bbs.it-home.org
复制代码

解释: "*"代表所有的取值范围内的数字,"/"代表每的意思,"*/5"表示每5个单位,"-"代表从某个数字到某个数字,","分开几个离散的数字。

本文转自:http://hi.baidu.com/andylu1988/item/9674d31406ed61008ebde4b6