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

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

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

 废话不多说,上代码:

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)即可实现程序自动运行更新。

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

相关文章

1亿条数据在PHP中实现Mysql数据库分表100张

当数据量猛增的时候,大家都会选择库表散列等等方式去优化数据读写速度。笔者做了一个简单的尝试,1亿条数据,分100张表。具体实现过程如下。 首先创建100张表: 英文代码 $i=0; whi...

emlog百度分享插件[提供下载]

emlog百度分享插件[提供下载]

emlog百度分享插件下载地址:bdshare.zip 百度分享概况: 引入社会化流量 用户浏览网站内容时产生的分享行为可以增加网站内容在腾讯空间、新浪微博和人人网等社会化网站的曝光机会...

PHP购物车类,简单易用,移植CodeIgniter,并进行一些优化[附带实例]

个人感觉CodeIgniter用起来方便,但有时候做电子商城网站的时候,没有使用CodeIgniter框架,但想用CodeIgniter里的购物车程序,那么就需要对其购物车类进行修改。但CodeIgn...

PHP 文件上传$_FILES

文件上传表单<form enctype="multipart/form-data" action="URL" method="post">  <inp...

如何在 SAE 下操作本地IO

因为SAE平台安全性的考虑,限制了用户对于本地IO的使用,但这样对于一些传统的PHP项目,也许带来了很多不便,因为它们都或多或少的有对本地IO的操作,像Smarty的编译模板和文件上传程序。为了解决这...

评论列表

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

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

iulog
13年前 (2013-01-27)

怎么停下来!!!

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

不错不错

发表评论

访客

看不清,换一张

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