PHP实现计划任务
时间:2010-06-06 来源:hkebao
PHP实现计划任务
时间:2010-6-6
ignore_user_abort这个函数可以帮助我们实现像linux中的cron一样实现计划任务.
到底该如何用php的这个函数实现计划任务呢?还跌借助另外一个函数,这个函数是set_time_limit,通过set_time_limit(0)可 以设置程序的执行时间为无限制,php默认的执行时间是30秒,通过set_time_limit(0)可以让程序无限制的执行下去。在程序执行之前加上 ignore_user_abort(1)和set_time_limit(0)即可以了,最终程序该如何写呢?给大家一个例子。
代码: 全选
<?php
ignore_user_abort(); // run script in background
set_time_limit(0); // run script forever
$interval=60*15; // do every 15 minutes...
do{
// add the script that has to be ran every 15 minutes here
// ...
sleep($interval); // wait 15 minutes
}while(true);
?>
测试:
我们来写一个简单的写数据库的例子
CREATE TABLE `a` (
`id` int(11) NOT NULL auto_increment,
`a` char(30) default NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 先创建出来一个表!
示例代码:
function plan() {
$link = mysql_connect("localhost","root","123") or die("<font color=red>无法建立起来连接。错误信息如下</font>");
mysql_query("SET NAMES utf8");
mysql_select_db("test",$link) or die("<font color=red>在服务器上面无法找到此请确认已建立此DB ");
mysql_query("insert into a (a) values('a')");
mysql_close();
}
ignore_user_abort(); // run script in background
set_time_limit(0); // run script forever
$interval=60*1; // do every 15 minutes...
do{
plan();
sleep($interval); // wait 15 minutes
}while(true);
刚刚还在说JAVA里面有一个开源的框架实现这个计划任务的功能呢。