php中flush()、ob_flush()、ob_end_flush()的区别介绍


Posted in PHP onFebruary 17, 2013

flush()、ob_flush()、ob_end_flush()三者的区别:

首先,说下buffer,它是一个内存地址空间,为4096(1kb)【在php.ini配置文件中找到output_buffering配 置】,php有php output_buffering机制,php代码在执行的时候,并不是立即将内容输出,而是想将echo/print内容输出到buffer,buffer满的时候才会将数据交给系统内核交由tcp传给浏览器显示,当开启php php output_buffering机制(默认是开启的,可以通过ob_start()函数开启)后,只有当php buffer中的数据达到了设置值,才会将buffer中 的数据发送给浏览器。

但是浏览器也是有缓存的,一些版本的浏览当数据达到256字节的时候才输出内容,flush()可以将等待输出的内容立即发送到客户端,而ob_flush()只有等待到buffer满的时候才输出。

这里为大家举一个简单的例子,作为验证:

<?php
//防止浏览器的缓存
echo str_repeat(" ",1024);
for($i=0;$i<5;$i++){
 echo $i;
 sleep(1);
 flush();//会每隔1s输出一个数字,如果使用ob_flush()则会等待5s一起输出
}
?>
PHP 相关文章推荐
PHP base64+gzinflate压缩编码和解码代码
Oct 03 PHP
php下获取Discuz论坛登录用户名、用户组、用户ID等信息的实现代码
Dec 29 PHP
php多维数组去掉重复值示例分享
Mar 02 PHP
PHP编译安装中遇到的两个错误和解决方法
Aug 20 PHP
php常用图片处理类
Mar 16 PHP
Zend Framework缓存Cache用法简单实例
Mar 19 PHP
php生成无限栏目树
Mar 16 PHP
PHP利用二叉堆实现TopK-算法的方法详解
Apr 24 PHP
利用PHP判断是否是连乘数字串的方法示例
Jul 03 PHP
PHP文件管理之实现网盘及压缩包的功能操作
Sep 20 PHP
Laravel框架实现即点即改功能的方法分析
Oct 31 PHP
PHP sdk文档处理常用代码示例解析
Dec 09 PHP
php去除换行符的方法小结(PHP_EOL变量的使用)
Feb 16 #PHP
PHP 获取文件路径(灵活应用__FILE__)
Feb 15 #PHP
php设计模式小结
Feb 15 #PHP
php安全开发 添加随机字符串验证,防止伪造跨站请求
Feb 14 #PHP
PHP下使用CURL方式POST数据至API接口的代码
Feb 14 #PHP
PHP中通过HTTP_USER_AGENT判断是否为手机移动终端的函数代码
Feb 14 #PHP
PHP-redis中文文档介绍
Feb 07 #PHP
You might like
PHP实现检测客户端是否使用代理服务器及其匿名级别
2015/01/07 PHP
phpcms手机内容页面添加上一篇和下一篇
2015/06/05 PHP
yii2分页之实现跳转到具体某页的实例代码
2016/06/02 PHP
php添加数据到xml文件的简单例子
2016/09/08 PHP
PHP 7.1新特性的汇总介绍
2016/12/16 PHP
Thinkphp3.2简单解决多文件上传只上传一张的问题
2017/09/26 PHP
PHP实现微信小程序人脸识别刷脸登录功能
2018/05/24 PHP
PHP生成zip压缩包的常用方法示例
2019/08/22 PHP
增强的 JavaScript 的 trim 函数的代码
2007/08/13 Javascript
JQuery CSS样式控制 学习笔记
2009/07/23 Javascript
Javascript根据指定下标或对象删除数组元素
2012/12/21 Javascript
nodejs中exports与module.exports的区别详细介绍
2013/01/14 NodeJs
js中typeof的用法汇总
2013/12/12 Javascript
JavaScript返回网页中超链接数量的方法
2015/04/03 Javascript
JavaScript 事件流、事件处理程序及事件对象总结
2017/04/01 Javascript
Vue-Router2.X多种路由实现方式总结
2018/02/09 Javascript
JavaScript常用事件介绍
2019/01/21 Javascript
vue 实现特定条件下绑定事件
2019/11/09 Javascript
node实现mock-plugin中间件的方法
2019/12/25 Javascript
antd Select下拉菜单动态添加option里的内容操作
2020/11/02 Javascript
python自动zip压缩目录的方法
2015/06/28 Python
详解TensorFlow查看ckpt中变量的几种方法
2018/06/19 Python
Python调用adb命令实现对多台设备同时进行reboot的方法
2018/10/15 Python
Python绘制堆叠柱状图的实例
2019/07/09 Python
python序列类型种类详解
2020/02/26 Python
HTML5实现页面切换激活的PageVisibility API使用初探
2016/05/13 HTML / CSS
HTML文本属性&amp;颜色控制属性的实现
2019/12/17 HTML / CSS
Hunkemöller瑞士网上商店:欧洲最大的内衣品牌之一
2018/12/03 全球购物
综合办公室个人的自我评价
2013/12/22 职场文书
求职信的七个关键技巧
2014/02/05 职场文书
致长跑运动员加油稿
2014/02/20 职场文书
三方协议书
2015/01/27 职场文书
2015年社会实践个人总结
2015/03/06 职场文书
2015年重阳节慰问信
2015/03/23 职场文书
医院见习总结
2015/06/24 职场文书
redis限流的实际应用
2021/04/24 Redis