php flush无效,IIS7下php实时输出的方法


Posted in PHP onAugust 25, 2016

在一个比较费时的操作中,想把操作记录在浏览器上实时显示出来,用到了flush(),把缓冲中的内容发送到浏览器。但在iis7里面用fastcgi模式配置的php怎么都实现不了,结果总是一起显示出来。

for ($i=10; $i>0; $i--)
{
  echo $i.'<br />';
  @ob_flush();
  flush();
  sleep(1);
}

上面的代码在IIS的默认设置下是无法逐渐显示结果的。解决办法如下:

打开文件 C:\Windows\System32\inetsrv\config\applicationHost.config ,注意如果你的是64位系统,这个文件就必须用64位的编辑软件打开,32位的软件打开会提示文件不存在,就用系统自带的notepad记事本打开就可以了。找到下面这一段,加入红色的那段代码就行了,也就是php这个handler里面加上responseBufferLimit="0"。

<handlers accessPolicy="Read, Script">

<add name="PHP_via_FastCGI" path="*.php" verb="*" modules="FastCgiModule" scriptProcessor="E:\PHP\php-cgi.exe" resourceType="Either" responseBufferLimit="0" />

现在你可以试一下,如果还是不行的话把php.ini里面的output_buffering = Off。

最后一点很重要,在不同的浏览器中,也用有不一样的结果。IE里面应该没什么问题了,如果是用chrome的话,每个echo出来的内容必须带有html,不然也是不行的,还有如果echo的内容太短也是实现不了这个效果的,可以在代码前先输出一段空格,如:echo str_pad(' ', 1050); chrome好像要先输出1000多个字符才会有这个效果,不行的话自己多尝试。

PHP 相关文章推荐
提高PHP编程效率 引入缓存机制提升性能
Feb 15 PHP
php防盗链的常用方法小结
Jul 02 PHP
PHP获取表单textarea数据中的换行问题
Sep 10 PHP
PHP中通过加号合并数组的一个简单方法分享
Jan 27 PHP
使用PHP实现二分查找算法代码分享
Jun 24 PHP
PHP之autoload运行机制实例分析
Aug 28 PHP
PHP获得数组交集与差集的方法
Jun 10 PHP
PHP获取昨天、今天及明天日期的方法
Feb 03 PHP
php 解析xml 的四种方法详细介绍
Oct 26 PHP
redis查看连接数及php模拟并发创建redis连接的方法
Dec 15 PHP
php框架CodeIgniter主从数据库配置方法分析
May 25 PHP
PHP7 mongoDB扩展使用的方法分享
May 02 PHP
php 的反射详解及示例代码
Aug 25 #PHP
php 输入输出流详解及示例代码
Aug 25 #PHP
PHP 输出缓冲控制(Output Control)详解
Aug 25 #PHP
PHP中利用sleep函数实现定时执行功能实现代码
Aug 25 #PHP
PHP sleep()函数, usleep()函数
Aug 25 #PHP
PHP页面间传递值和保持值的方法
Aug 24 #PHP
PHP中explode函数和split函数的区别小结
Aug 24 #PHP
You might like
基于PHP创建Cookie数组的详解
2013/07/03 PHP
PHPstorm激活码2020年5月13日亲测有效
2020/09/17 PHP
23个Javascript弹出窗口特效整理
2011/02/25 Javascript
extjs 初始化checkboxgroup值的代码
2011/09/21 Javascript
33个优秀的 jQuery 图片展示插件分享
2012/03/14 Javascript
javascript 全选与全取消功能的实现代码
2012/12/23 Javascript
JavaScript代码实现左右上下自动晃动自动移动
2016/04/08 Javascript
基于HTML5上使用iScroll实现下拉刷新,上拉加载更多
2016/05/21 Javascript
浅谈javascript中的constructor
2016/06/08 Javascript
浅谈Vue.js
2017/03/02 Javascript
webpack配置sass模块的加载的方法
2017/07/30 Javascript
React进阶学习之组件的解耦之道
2017/08/07 Javascript
JS实现的将html转为pdf功能【基于浏览器端插件jsPDF】
2018/02/06 Javascript
微信小程序仿今日头条导航栏滚动解析
2019/08/20 Javascript
jQuery与原生JavaScript选择HTML元素集合用法对比分析
2019/11/26 jQuery
记一次用ts+vuecli4重构项目的实现
2020/05/21 Javascript
js判断鼠标移入移出方向的方法
2020/06/24 Javascript
Javascript节流函数throttle和防抖函数debounce
2020/12/03 Javascript
使用python调用浏览器并打开一个网址的例子
2014/06/05 Python
python实现自动解数独小程序
2019/01/21 Python
Python 内置变量和函数的查看及说明介绍
2019/12/25 Python
将python依赖包打包成window下可执行文件bat方式
2019/12/26 Python
TensorFlow实现保存训练模型为pd文件并恢复
2020/02/06 Python
Python selenium抓取虎牙短视频代码实例
2020/03/02 Python
Python matplotlib修改默认字体的操作
2020/03/05 Python
Python如何脚本过滤文件中的注释
2020/05/27 Python
Python爬虫爬取有道实现翻译功能
2020/11/27 Python
使用CSS3实现一个3D相册效果实例
2016/12/03 HTML / CSS
利用HTML5绘制点线面组成的3D图形的示例
2015/05/12 HTML / CSS
澳大利亚便宜的家庭购物网站:CrazySales
2018/02/06 全球购物
Java和Javasciprt的区别
2012/09/02 面试题
应届生程序员求职信
2013/11/05 职场文书
项目投资意向书
2014/04/01 职场文书
体育个人工作总结
2015/02/09 职场文书
小学运动会报道稿
2015/07/22 职场文书
化验室安全管理制度
2015/08/06 职场文书