PHP计划任务之关闭浏览器后仍然继续执行的函数

前端之家收集整理的这篇文章主要介绍了PHP计划任务之关闭浏览器后仍然继续执行的函数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

备忘一下这个函数:
函数名称:ignore_user_abort
函数配置或取得使用端连接中断后,PHP 程序是否仍继续执行。默认值为中断连接后就停止执行。在 PHP 配置文件中 (PHP3.ini/PHP.ini) 的 ignore_user_abort 选项就是配置处。本功能PHP 3.0.7 版之后才开始提供。
官方说明:http://cn2.PHP.net/manual/en/function.ignore-user-abort.PHP
使用方法
<div class="codetitle"><a style="CURSOR: pointer" data="87263" class="copybut" id="copybut87263" onclick="doCopy('code87263')"> 代码如下:

<div class="codebody" id="code87263">
ignore_user_abort(true); //即使Client断开(如关掉浏览器),PHP脚本也可以继续执行.

这样就可以实现计划任务效果了.但是还是要客户端访问程序才行.
比如说在生成静态页面、采集的时候,不需要在等待了。关掉浏览器吧。
例子:
<div class="codetitle"><a style="CURSOR: pointer" data="78977" class="copybut" id="copybut78977" onclick="doCopy('code78977')"> 代码如下:
<div class="codebody" id="code78977">
//test
set_time_limit(0);
ignore_user_abort(true);
$i = 0 ;
while($i ++ < 200){
file_put_contents($i.'.PHP',$i);
sleep(3);
}

用ignore_user_abort函数实现PHP计划任务


<div class="codetitle"><a style="CURSOR: pointer" data="56950" class="copybut" id="copybut56950" onclick="doCopy('code56950')"> 代码如下:
<div class="codebody" id="code56950">
<?PHP
ignore_user_abort(true);
set_time_limit(0);
while(1) {
  $fp = fopen('time_task.txt',"a+");
  $str = date("Y-m-d h:i:s")."\n\r";
  fwrite($fp,$str);
  fclose($fp);
  sleep(5); //半小时执行一次
}
?>

PHP计划任务

猜你在找的PHP相关文章