当前位置:首页 > PHP教程 > php高级应用 > 列表

php定时执行PHP脚本一些方法总结

发布:smiling 来源: PHP粉丝网  添加日期:2014-08-28 13:22:33 浏览: 评论:0 

linux下定时执行php脚本,执行PHP脚本.

方法1:如果你想定时执行某一个PHP脚本,可以直接这样写:

*/1 * * * * root -q /bin/local/php /path/to/your/php/script.php(每一分钟执行一次script.php).注意,这样写需要把PHP变成可执行的脚本文件,在命令行下,脚本所在目录:

chmod +x script.php

crontab+php-cgi 定时执行PHP脚本

1. 在web根目录创建请求的脚本index.php

我的文件路径,根据安装路径不同有不同路径,/usr/local/webserver/htdosc/index.php

2. 创建crontab文件

2.1 crontab -e

2.2 * * * * * /usr/local/webserver/php/bin/php-cgi -q /usr/local/webserver/htdosc/index.php

#编辑crond计划,每分钟请求index.php,完成,以上步骤完成后,在我的电脑中能正常每分钟请求index.php.

注意事项:

一. /usr/local/webserver/php/  是我的php安装路径

二. php-cgi 是php解析器(我的理解是这样,总感觉我理解的不对,希望大虾们指正),有些资料是用./bin/php,我电脑上就不能,所以用php-cgi,可能安装的方式不对吧。

三. -q 是安静模式(某些资料中看到的)运行php脚本

四. 有些资料是 把在index.php的首行添加#!  /usr/local/webserver/php/bin/php -q,并对index.php添加执行权限,我没有这样做,也能正常请求index.php

最后介绍一个PHP定时执行任务的实现用到的函数  ignore_user_abort(),set_time_limit(0),sleep($interval) 

此代码只要运行一次后关闭浏览器即可,代码如下:

  1. ignore_user_abort();//关掉浏览器,PHP脚本也可以继续执行. 
  2. set_time_limit(0);// 通过set_time_limit(0)可以让程序无限制的执行下去 
  3. $interval=60*30;// 每隔半小时运行 
  4. do{//开源代码phpfensi.com 
  5.  //这里是你要执行的代码  
  6.  sleep($interval);// 等待5分钟 
  7. }while(true);

Tags: php定时执行 执行PHP脚本

分享到: