PHP脚本任务计划,无休止的进行下去了,如何停止?

清风闲客 2010-09-29 01:27:06
从网上看到了这么一段代码,是一个任务计划,即使关闭浏览器之后该脚本也能继续运行。我访问了一下,结果无法停止了。无奈我只好把Apache停了,重启了一下Apache。
有没有好办法停止该脚本的运行?代码如下:

<?php
ignore_user_abort(); // 在后台运行脚本
set_time_limit(0); // 持续不间断运行脚本
$interval=10; // 时间间隔
$i = 1;
do{
$fp = fopen('text3.txt','a');
fwrite($fp,'test'.$i);
fclose($fp);
sleep($interval); // 等待10s后继续进行
$i++;
}while(true);
?>
...全文
401 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
havyli 2011-01-19
  • 打赏
  • 举报
回复
我纠结了好久了,今天终于在这里找到答案了,阿弥陀佛
CRMEB鲁老师 2010-12-16
  • 打赏
  • 举报
回复
楼主可以看下 下面的链接 我认同5楼
http://wolf123.blog.163.com/blog/static/17505429820101116102848243/
kyzy_yy_pm 2010-09-30
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 sindel 的回复:]
cookie是不可行的 , cookie 在头里面了
[/Quote]
?????????怎么不行能,我都做出来个类似的了,上面的只是为了楼主明白,其实有的代码不再同一个文件中
sindel 2010-09-30
  • 打赏
  • 举报
回复
cookie是不可行的 , cookie 在头里面了 ,前面的不可能知道后面修改的
数据库,文件,session 都是 IO 操作,注意互斥问题
建议用共享内存
kyzy_yy_pm 2010-09-30
  • 打赏
  • 举报
回复
<?php
ob_start();
ob_end_flush();
for($i = 1; $i <= 300; $i++ )echo ' ';

$b = true;
$i = 0;
while($b) {
//此处判断cookie动作
echo $i;
sleep(1);
flush();
$i++;
}
?>
<!--发送此请求请找个合适的地方创建cookie,这里就不表了-->
<input type="button" value="用Ajax发送请求创建cookie来停止while循环">
kyzy_yy_pm 2010-09-30
  • 打赏
  • 举报
回复
$b = true;
while(true);

在while中判断标识如果标识为假则$b = false;就行了,至于标识你爱用什么都行,什么cookie文件的都行
清风闲客 2010-09-30
  • 打赏
  • 举报
回复
无数据库,本身就是一个死循环。删除文件也不能终止该脚本的运行。
我需要的是终止该脚本。
jlzan1314 2010-09-29
  • 打赏
  • 举报
回复
比如说写个文件.在循环中发现文件,就中断. 程序初始化时,先删除掉这个文件,下次用其他的程序写个空文件就可以了.
岳麓山脚下 2010-09-29
  • 打赏
  • 举报
回复
循环条件有问题吗?
KTZ666 2010-09-29
  • 打赏
  • 举报
回复
在数据库表中做个标志判断
kyzy_yy_pm 2010-09-29
  • 打赏
  • 举报
回复
只要在页面中加个button,点击后生成个标识cookie,在while中判断cookie就行了
kyzy_yy_pm 2010-09-29
  • 打赏
  • 举报
回复
判断cookie

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧