php使用ob_flush不能每隔一秒输出原理分析


Posted in PHP onJune 02, 2015

本文实例讲述了php使用ob_flush不能每隔一秒输出原理。分享给大家供大家参考。具体分析如下:

实现功能:

浏览器每隔一秒输出一个数字。

php.ini配置为:

版本5.3

implicit_flush = off
output_buffering = off

另:查看output_buffering是否打开,可以:

var_dump(ini_get('output_buffering'));

好我们再来看看这段代码:

<?php
  $i = 3;
  ob_start();
  while ($i--) {
    echo $i, "<br />";
    ob_flush();
    flush();
    sleep(1);
  }
  ob_end_clean();
?>

可为什么:这段代码不能每隔一秒输出呢??

原因分析:

apache运行原理:当你访问一个地址(发送请求)后,apache启动PHP,那么php执行是页面级的,即如果有可执行的代码:它全部执行完后再丢给apache,apache再丢给browser显示结果

如何实现?

如果是cli 显示结果方式又不一样,那里不一样呢?

linux cmd:

php5 test.php

由php直接执行,不经过apache,web service,就可以实现:

<?php
  $i = 3;
  while ($i--) {
    echo $i, "\n";
    sleep(1);
  }
  ob_end_clean();
?>

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
第1次亲密接触PHP5(2)
Oct 09 PHP
推荐Discuz!5的PHP代码高亮显示与实现可运行代码
Mar 15 PHP
php header()函数使用说明
Jul 10 PHP
PHP遍历文件夹与文件类及处理类用法实例
Sep 23 PHP
php在apache环境下实现gzip配置方法
Apr 02 PHP
PHP获取文件行数的方法
Jun 10 PHP
在WordPress中安装使用视频播放器插件Hana Flv Player
Jan 04 PHP
PHP的Laravel框架中使用AdminLTE模板来编写网站后台界面
Mar 21 PHP
SSO单点登录的PHP实现方法(Laravel框架)
Mar 23 PHP
PHP操作mysql数据库分表的方法
Jun 09 PHP
PHP实现无限分类的实现方法
Nov 14 PHP
PHP扩展mcrypt实现的AES加密功能示例
Jan 29 PHP
php获取指定范围内最接近数的方法
Jun 02 #PHP
PHP使用递归方式列出当前目录下所有文件的方法
Jun 02 #PHP
php使用socket post数据到其它web服务器的方法
Jun 02 #PHP
php自动给网址加上链接的方法
Jun 02 #PHP
php将字符串随机分割成不同长度数组的方法
Jun 01 #PHP
php正则preg_replace_callback函数用法实例
Jun 01 #PHP
php实现读取和写入tab分割的文件
Jun 01 #PHP
You might like
php学习之 数组声明
2011/06/09 PHP
PHP实现把数字ID转字母ID
2013/08/12 PHP
两千行代码的PHP学习笔记汇总
2014/10/05 PHP
PHP页面跳转操作实例分析(header方法)
2016/09/28 PHP
PHP实现的函数重载功能示例
2018/08/03 PHP
javascript Base类 包含基本的方法
2009/07/22 Javascript
javascript 同时在IE和FireFox获取KeyCode的代码
2010/02/07 Javascript
网页防止tab键的使用快速解决方法
2013/11/07 Javascript
js实现日期级联效果
2014/01/23 Javascript
javascript HTML+CSS实现经典橙色导航菜单
2016/02/16 Javascript
jQuery.Callbacks()回调函数队列用法详解
2016/06/14 Javascript
jQuery表单验证插件解析(推荐)
2016/07/21 Javascript
Bootstrap jquery.twbsPagination.js动态页码分页实例代码
2017/02/20 Javascript
vue.js实现数据动态响应 Vue.set的简单应用
2017/06/15 Javascript
Angular.JS中指令ng-if的注意事项小结
2017/06/21 Javascript
CheckBox多选取值及判断CheckBox选中是否为空的实例
2017/10/31 Javascript
angular2模块和共享模块详解
2018/04/08 Javascript
React性能优化系列之减少props改变的实现方法
2019/01/17 Javascript
优化Vue中date format的性能详解
2020/01/13 Javascript
jQuery实现简单聊天室
2020/02/08 jQuery
Django如何配置mysql数据库
2018/05/04 Python
Python numpy数组转置与轴变换
2019/11/15 Python
django实现更改数据库某个字段以及字段段内数据
2020/03/31 Python
Python使用Pyqt5实现简易浏览器(最新版本测试过)
2020/04/27 Python
python3+openCV 获取图片中文本区域的最小外接矩形实例
2020/06/02 Python
Move Free官方海外旗舰店:美国骨关节健康专业品牌
2017/12/06 全球购物
美国最大的电子宠物训练产品制造商:PetSafe
2018/10/12 全球购物
护士自荐信怎么写
2013/10/18 职场文书
初一学生期末评语
2014/04/24 职场文书
乱丢垃圾袋检讨书
2014/10/08 职场文书
2015年纪念“卢沟桥事变”78周年活动方案
2015/05/06 职场文书
2015年乡镇工会工作总结
2015/05/19 职场文书
长江七号观后感
2015/06/11 职场文书
学习习近平主席讲话心得体会
2016/01/20 职场文书
HTML+CSS制作心跳特效的实现
2021/05/26 HTML / CSS
Redis实战之Lettuce的使用技巧详解
2022/12/24 Redis