日期:2014-05-16  浏览次数:20955 次

PHP定时任务实现和Linux crontab定时任务

有时候为了监控某个程序,需要定时任务。需要程序自动运行。
1、ignore_user_abort()
ignore_user_abort()函数搭配set_time_limit(0)和sleep($interval)即可实现程序自动运行更新。
例子:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
//即使Client断开(如关掉浏览器),PHP脚本也可以继续执行.
ignore_user_abort();
// 执行时间为无限制,php默认的执行时间是30秒,通过set_time_limit(0)可以让程序无限制的执行下去
set_time_limit(0);
// 每隔5分钟运行
$interval=60*5;
do{
????$url = "http://yaolei.info";
????$ch = curl_init();
????curl_setopt($ch, CURLOPT_URL, $url);
????curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
????curl_setopt($ch, CURLOPT_TIMEOUT, 2);
????$result = curl_exec($c