PHP能告诉你浏览器什么时候消失吗?

PHP能告诉你浏览器什么时候消失吗?,php,Php,如果我正在生成一个要发送到浏览器的数据流,并且用户关闭了浏览器,那么我是否可以在PHP中告诉用户,我不需要费心生成或发送流的其余部分?我想在这个循环中插入一些内容: while (!feof($pipes[1])) { echo fgets($pipes[1]); } 我的备用计划是让浏览器使用JavaScript onunload来点击另一个PHP页面以终止生成数据的进程,但如果PHP能够告诉我何时无处回音,那就更干净了。默认情况下,如果用户导航离开,PHP将中止脚本。但是,有时您不希

如果我正在生成一个要发送到浏览器的数据流,并且用户关闭了浏览器,那么我是否可以在PHP中告诉用户,我不需要费心生成或发送流的其余部分?我想在这个循环中插入一些内容:

while (!feof($pipes[1])) {
   echo fgets($pipes[1]);
}

我的备用计划是让浏览器使用JavaScript onunload来点击另一个PHP页面以终止生成数据的进程,但如果PHP能够告诉我何时无处回音,那就更干净了。

默认情况下,如果用户导航离开,PHP将中止脚本。但是,有时您不希望发生这种情况,因此php有一个您设置的配置,名为
ignore\u user\u abort


还有一个名为的函数,该函数假定在执行停止时执行。我从来没有实际使用过它,所以我不会担保它的工作情况如何,但我想我应该提到它的完整性。

我相信脚本在正常加载时会自动中止(没有ajax)。但是,如果您想使用xmlhttprequest通过php实现某种长轮询,我认为您必须使用某种javascript,因为php无法检测到它。我也想知道确切的情况

这些答案为我指明了我要寻找的东西。潜在的过程需要特别注意才能消灭它。我需要跳出这个圈子。再次感谢,堆栈溢出

 while (!feof($pipes[1]) && !connection_aborted())
 {
  echo fgets($pipes[1]);
 }

 if (connection_aborted())
 {
  exec('kill -4 '.$mypid);
 }

关闭,但在本例中,他只想在用户中止时停止处理数据。