如何实现PHP的计划(定时)任务和暂停任务

飘逸的风13年前 (2012-11-19)程序8592

如果在服务器做计划任务是件很简单的事情,但是有的时候收条件限制无法使用服务器自带的计划任务,比如买的空间,这时候想要让网站定时执行某些操作(处理数据、生成静态文件、清除缓存...),该怎么办呢?

 废话不多说,上代码:

01 ignore_user_abort();
02 set_time_limit(0);
03 // 每隔60秒运行一次
04 $interval = 60;
05 do {
06     $filename 'test.txt';
07     $fh fopen($filename"a");
08 //    fwrite($fh, "," . rand(1, 100));
09     fwrite($fh"," . time());
10     fclose($fh);
11     sleep($interval);
12 while (true);

这段代码功能是,每60秒执行一次do{ }里面代码,即使关掉了浏览器,也一样执行。主要是使用gnore_user_abort()函数搭配set_time_limit(0)和sleep($interval)即可实现程序自动运行更新。

注:使用此代码会对性能有一定的影响。

相关文章

Emlog常用日志列表页的判断

  Emlog 用得久了,emer 们就难免会折腾一下自己的模板,谁让 Emlog 这么简单实用呢?除了折腾外观及各种特效,当然还有实用的功能,日志列表页的判断应该就属于此类。我们可以根据日志列表页面...

PHP5+引进$GLOBALS延迟初始化概念

今天在使用$GLOBALS['_SERVER']来替代$_SERVER来访问相关的环境变量,总是会报“_SERVER undefined”错误。如下用例:    用例1: &n...

强制下载文件的代码(解决了IE下中文文件名乱码问题)

以下这段代码作用是:浏览器提交excel格式的数据和文件名到服务器上,PHP将请求转化为可下载的excel文件,并要求浏览器弹出文件下载提示窗口。中间遇到一个问题是提交的中文文件名直接放到header...

对PHP新手的一些建议和开发习惯

1、准确的理解各种概念。现在的新东西层出不穷,望文生义和一知半解对开发工作有害无益;//比如我就碰到有人理解松散耦合(这个东西不新)的概念居然是要求代码不要有空行,否则你的程序就是“太松散”了...

可以提高PHP编程效率的一些方法

1、如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。 2、$row[’id’] 的速度是$row[id]的7倍。 3、echo 比 print 快,并且使用e...

PHP如何解决在URL地址栏输入中文字符搜索结果出现乱码

这个问题的出现的前提是本站代码采用utf-8格式,当页面停留在搜索页面时,在浏览器的地址栏输入中文的关键字进行搜索时会出现乱码,在网上查找资料说明,是因为浏览器默认将url中的中文字符编码为gb231...

评论列表

飘逸的风
13年前 (2013-01-27)

@iulog:可以在循环中间读取一个文件,文件存在循环,不存在不循环。不想循环了,用程序控制删除这个文件即可。这是其中一种方法!

iulog
13年前 (2013-01-27)

怎么停下来!!!

飘逸的风 回复:
@iulog:可以在循环中间读取一个文件,文件存在循环,不存在不循环。不想循环了,用程序控制删除这个文件即可。这是其中一种方法!
13年前 (2013-01-27)
中国友链网
13年前 (2012-12-03)

不错不错

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。