我正在编写一个执行大量重复工作的 PHP 脚本,当客户端执行它时,我希望它在完成任务时以某种方式动态地发回 HTML。(没有 AJAX?)如何做到这一点?
问问题
948 次
4 回答
7
您可以使用 flush(); 刷新输出缓冲区;
所以像:
taskOne();
echo 'Task one finished';
flush();
...
希望这可以帮助。
于 2009-05-14T13:32:30.677 回答
1
也许您可以使用 refresh-meta 标记或 HTTP 标头,如下所示:
header("Refresh: 3; URL=http://www.some.org/some.html");
浏览器将在 3 秒后刷新。如果你问我,这可能有点意思 =) 包含 AJAX 解决方案会更好,但它至少可以在没有太多 JavaScript 工作的情况下工作。
于 2009-05-14T13:23:31.370 回答
1
你最好通过 ajax 轮询服务器。设置一个脚本,可以监控您正在运行的任务并进行轮询。这样,用户的浏览器并不总是处于加载模式,他们可以离开页面并在需要时返回。
于 2009-05-14T21:25:01.230 回答
-1
然后你需要刷新站点,因为 PHP 只在每个页面请求上运行。
于 2009-05-14T13:15:51.327 回答