php中的buffer缓冲区用法分析


Posted in PHP onMay 31, 2019

本文实例讲述了php中的buffer缓冲区用法。分享给大家供大家参考,具体如下:

buffer其实就是缓冲区,一个内存地址空间,主要用于存储数据

<?php
echo 1;

我们都运行程序浏览器访问,会显示1。

但是其实这中间会经历一个buffer,我们可以这样理解:这个1数据会先到php缓存区,当这个缓冲区满了之后,再传给客户端(浏览器)。

这个过程大致流程如下:

内容 -> php buffer -> tcp -> 终端(浏览器)

php.ini

output_buffering = on
#打开output缓冲,默认打开的。

output_buffering打开与关闭的区别:

1.打开了php输出缓存: echo,print -> php output_buffring -> server buffering -> browser buffering -> browser display

2.未打开php输出缓存: echo,print -> server buffering -> browser buffering -> browser display

我们在代码里获取缓存区内容:

<?php
echo 1;
echo "<hr/>";
// 获取php缓存区的内容
$buffer = ob_get_contents();
echo $buffer;

如果在php配置文件php.ini中output_buffering = on是开启的,那么上面代码在浏览器上会显示2个1和2条横线,查看网页源代码如下:

1<hr/>1<hr/>

如果php.ini中是关闭的,那么只会显示一次。

当然我们也可以在代码中,临时开启php缓冲区

<?php
ob_start(); // 开始php缓存,写在最前面
echo 1;
echo "<hr/>";
// 获取php缓存区的内容
$buffer = ob_get_contents();
echo $buffer;

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

PHP 相关文章推荐
PHP 中执行系统外部命令
Oct 09 PHP
一个简单的自动发送邮件系统(二)
Oct 09 PHP
用PHPdig打造属于你自己的Google[图文教程]
Feb 14 PHP
浅析PHP水印技术
Feb 14 PHP
php实现rc4加密算法代码
Apr 25 PHP
codeigniter教程之多文件上传使用示例
Feb 11 PHP
php中使用PHPExcel读写excel(xls)文件的方法
Sep 15 PHP
php操作(删除,提取,增加)zip文件方法详解
Mar 12 PHP
学习php设计模式 php实现模板方法模式
Dec 08 PHP
PHP获取当前文件的父目录方法汇总
Jul 21 PHP
PHP堆栈调试操作简单示例
Jun 15 PHP
PHP面向对象程序设计子类扩展父类(子类重新载入父类)操作详解
Jun 14 PHP
PHP实现基于状态的责任链审批模式详解
May 31 #PHP
Laravel框架实现调用百度翻译API功能示例
May 30 #PHP
Laravel框架学习笔记之批量更新数据功能
May 30 #PHP
PHP实现的微信公众号扫码模拟登录功能示例
May 30 #PHP
PHP使用PDO创建MySQL数据库、表及插入多条数据操作示例
May 30 #PHP
TP5(thinkPHP5框架)基于bootstrap实现的单图上传插件用法示例
May 29 #PHP
TP5(thinkPHP框架)实现后台清除缓存功能示例
May 29 #PHP
You might like
资料注册后发信小技巧
2006/10/09 PHP
不用数据库的多用户文件自由上传投票系统(2)
2006/10/09 PHP
PHP 导出数据到淘宝助手CSV的方法分享
2010/02/27 PHP
php不用正则验证真假身份证
2013/11/06 PHP
浅谈PHP中关于foreach使用引用变量的坑
2016/11/14 PHP
PHP控制反转(IOC)和依赖注入(DI)
2017/03/13 PHP
js中几种去掉字串左右空格的方法
2006/12/25 Javascript
jQuery 页面 Mask实现代码
2010/01/09 Javascript
js中匿名函数的N种写法
2010/09/08 Javascript
javascript之querySelector和querySelectorAll使用介绍
2011/12/20 Javascript
Javascript面向对象扩展库代码分享
2012/03/27 Javascript
js中string转int把String类型转化成int类型
2014/08/13 Javascript
vue.js中$watch的用法示例
2016/10/04 Javascript
jquery+css3问卷答题卡翻页动画效果示例
2016/10/26 Javascript
Jquery Easyui选项卡组件Tab使用详解(10)
2016/12/18 Javascript
如何实现星星评价(jquery.raty.js插件)
2016/12/21 Javascript
Spring shiro + bootstrap + jquery.validate 实现登录、注册功能
2017/06/02 jQuery
第一个Vue插件从封装到发布
2017/11/22 Javascript
动态加载权限管理模块中的Vue组件
2018/01/16 Javascript
angularJs中json数据转换与本地存储的实例
2018/10/08 Javascript
教你使用vue-cli快速构建的小说阅读器
2019/05/13 Javascript
vue 扩展现有组件的操作
2020/08/14 Javascript
[01:51]历届DOTA2国际邀请赛举办地回顾 TI9落地上海
2018/08/26 DOTA
简述Python2与Python3的不同点
2018/01/21 Python
python机器人运动范围问题的解答
2019/04/29 Python
Python使用python-docx读写word文档
2019/08/26 Python
HTML5 video进入全屏和退出全屏的实现方法
2020/07/28 HTML / CSS
Boden美国官网:英伦原创时装品牌
2017/07/03 全球购物
旅游与酒店管理的自我评价分享
2013/11/03 职场文书
单身联谊活动方案
2014/01/29 职场文书
厂长岗位职责
2014/02/19 职场文书
幼儿教师求职信
2014/05/24 职场文书
有关环保的标语
2014/06/13 职场文书
2015年安全生产目标责任书
2015/01/29 职场文书
导游词之南京中山陵
2019/11/27 职场文书
Python图像处理之图像拼接
2021/04/28 Python