如果刷新一些文本并结束HTTP请求,我如何编写一个继续运行的PHP脚本?这可能吗?
答案 0 :(得分:5)
永远运行PHP应用程序或直到php终止
ignore_user_abort(true);
set_time_limit(0);
答案 1 :(得分:4)
您可能对ignore_user_abort
配置指令和/或ignore_user_abort
函数感兴趣:
设置客户端是否断开连接 应该导致脚本中止。
使用它,您可以:
用户的浏览器可能仍会显示“正在等待”或“正在加载”,但页面内容将被加载并显示 - 即使用户按下“停止”,您的脚本也应继续执行。
有关更多信息,该功能的手册页面上有一个示例 - 您可以查看这篇文章:How to Use ignore_user_abort()
to Do Processing Out of Band
当然,虽然这可以用于一些轻过程(比如在页面末尾“清理”东西,尽可能快地向用户显示),你仍然会受max_execution_time
之类的限制。
因此,这不是一个应该用于长/重计算的解决方案。