最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
php ignore_user_abort()函数之计划任务实现方法
时间:2012-08-06 编辑:简简单单 来源:一聚教程网
php ignore_user_abort
函数说明
(PHP 4中,PHP 5中)
ignore_user_abort 设置与客户机断开是否会终止脚本的执行。
本函数返回 user-abort 设置的之前的值(一个布尔值)。
函数定义
int ignore_user_abort ([ string $value ] )
参数 描述
setting 可选。如果设置为 true,则忽略与用户的断开,如果设置为 false,会导致脚本停止运行。
如果未设置该参数,会返回当前的设置。
提示注释
注释:PHP 不会检测到用户是否已断开连接,直到尝试向客户机发送信息为止。简单地使用 echo 语句无法确保信息发送,参阅 flush() 函数。
实例说明
例-1 一个的ignore_user_abort()的例子,配合set_time_limit()函数 和一个死循环就可以实现计划任务功能。
// Ignore user aborts and allow the script
// to run forever
ignore_user_abort (true);
set_time_limit (0);
echo 'Testing connection handling in PHP' ;
// Run a pointless loop that sometime
// hopefully will make us click away from
// page or click the "Stop" button.
while(1)
{
// Did the connection fail?
if( connection_status () != CONNECTION_NORMAL )
{
break;
}
// Sleep for 10 seconds
sleep (10);
}
// If this is reached, then the 'break'
// was triggered from inside the while loop
// So here we can log, or perform any other tasks
// we need without actually being dependent on the
// browser.
?>
实例 1、
关闭浏览器后,程序能继续在后台跑,这种情况下需要用到ignore_user_abort()函数;
ignore_user_abort(true); //设置客户端断开连接时是否中断脚本的执行
set_time_limit(0);
$file = '/tmp/ignore_user.txt';
if(!file_exists($file)) {
file_put_contents($file);
}
if(!$handle = fopen($file,'a+b')){
echo "not open file :".$file;
exit;
}
$i=0;
while($i<100) {
$time = date("Y-m-d H:i:s",time());
echo $time."\n";
if(fwrite($handle,$time."\n")===false) {
echo "not write file:".$file;
exit;
}
echo "write file time:".$time."\n";
$i++;
sleep(2);
}
fclose($handle);
加上这段代码,即使你把浏览器关闭后还是能还执行php计划任务哦。
相关文章
- php中bind_param()函数用法分析 08-03
- PHP函数rtrim()使用中的怪异现象分析 05-01
- php 基础函数 03-27
- php 常用的系统函数 03-17
- 给大家分享几个常用的PHP函数 01-19
- PHP162个常用函数总结 12-28