加载时打印一些结果

时间:2012-05-22 00:15:51

标签: php apache

我不知道这是PHP或APACHE中的问题,但是我想打印一些结果,即使脚本仍在运行。

我的意思是,因为我的for循环是一个很长的脚本,我想在for循环上打印一些完成的结果。但是会发生的情况是,它只会加载页面,不会回显任何内容,只会在脚本加载完成后立即显示内容。

P.S。那就是当使用wamp ...当我在网站上加载脚本时,它会打印一些结果并添加更多结果,直到脚本加载完毕。

2 个答案:

答案 0 :(得分:1)

如果您有输出缓冲,则添加

ini_set("implicit_flush", "1");

在脚本开头关闭它,这只会影响它所在的​​脚本 如果你想在php.ini中设置output_buffering = Off整个网站,那么你也可以在你的.htaccess文件中设置它。

答案 1 :(得分:0)

在单独的脚本中完成所有长期工作并使用AJAX加载所需的内容,您也可以将加载部分分成几部分。 jQuery.get是启动http://api.jquery.com/jQuery.get/

的最简单方法

示例代码会将数据加载到具有id=result的元素中(当然,您需要包含jQuery http://docs.jquery.com/Tutorials:Getting_Started_with_jQuery

$.get('long_script.php', function(data) {
  $('#result').html(data);
});

当然,这比回调循环中的结果要困难一点,但这可以保证在任何服务器/浏览器设置上都可以工作,并且在长任务期间也会加载整个页面,而不是以任何方式限制你在html中/ css用法