PHP中的ob_start() 的使用】的更多相关文章

用PHP的ob_start();控制您的浏览器cache Output Control 函数可以让你自由控制脚本中数据的输出.它非常地有用,特别是对于:当你想在数据已经输出后,再输出文件头的情况.输出控制函数不对使用 header() 或 setcookie(), 发送的文件头信息产生影响,只对那些类似于 echo() 和 PHP 代码的数据块有作用.我们先举一个简单的例子,让大家对Output Control有一个大致的印象:Example 1. 程序代码 程序代码<?phpob_start(…
1.在PHP编程中, 我们经常会遇到一些直接产生输出的函数, 如passthru(),readfile(), var_dump() 等. 但有时我们想把这些函数的输出导入到文件中,或者先经过处理再输出, 或者把这些函数的输出作为字符串来处理. 这时我们就要用到 Output Buffer(输出缓冲) 函数了. 处理输出缓冲的函数主要有这么几个: ob_start() 开始输出缓冲, 这时PHP停止输出, 在这以后的输出都被转到一个内部的缓冲里. ob_get_contents() 这个函数返回内…
用PHP的ob_start();控制您的浏览器cache Output Control 函数可以让你自由控制脚本中数据的输出.它非常地有用,特别是对于:当你想在数据已经输出后,再输出文件头的情况.输出控制函数不对使用 header() 或 setcookie(), 发送的文件头信息产生影响,只对那些类似于 echo() 和 PHP 代码的数据块有作用.我们先举一个简单的例子,让大家对Output Control有一个大致的印象:Example 1. 程序代码 程序代码<?phpob_start(…
ob,输出缓冲区,是output buffering的简称,而不是output cache.ob用对了,是能对速度有一定的帮助,但是盲目的加上ob函数,只会增加CPU额外的负担 ob的基本原则:如果ob缓存打开,则echo的数据首先放在ob缓存.如果是header信息,直接放在程序缓存.当页面执行到最后,会把ob缓存的数据放到程序缓存,然后依次返回给浏览器. 下面我说说ob的基本作用:  1)防止在浏览器有输出之后再使用setcookie().header()或session_start()等发…
原文: http://blog.csdn.net/21aspnet/article/details/7389427 php缓冲 output_buffering和ob_start buffer buffer是一个内存地址空间,Linux系统默认大小一般为4096(4kb),即一个内存页.主要用于存储速度不同步的设备或者优先级不同的设备之间传办理数据的区域.通过buffer,可以使进程这间的相互等待变少.这里说一个通俗一点的例子,你打开文本编辑器编辑一个文件的时候,你每输入一个字符,操作系统并不会…
一.判断大型网站的标准 1.pv值(page views)网站浏览量: 概念:一个网站,所有的页面,在一天24小时内,被访问的总量,达到千万级别,或者几百万以上. 2.uv值(unique visitor)独立访客: 概念:一个网站,在一天24小时内,有多少个用户来访问我们的网站.uv值几十万个, 3.独立 ip, 概念:一个网站,在一天24小时内,有多少个独立ip来访问我们的网站. 如果要考虑公司的局域网,uv值略大于独立ip的. 二.大型网站带来哪些问题: 1.高的并发量. 并发量:一个网站…
[PHP] ;;;;;;;;;;;;;;;;;;; ; About php.ini ; ;;;;;;;;;;;;;;;;;;; ; This file controls many aspects of PHP’s behavior. In order for PHP to ; read it, it must be named ‘php.ini’. PHP looks for it in the current ; working directory, in the path designate…
这个文件必须命名为''php.ini''并放置在httpd.conf中的PHPIniDir指令指定的目录中.最新版本的php.ini可以在下面两个位置查看:http://cvs.php.net/viewvc.cgi/php-src/php.ini-recommended?view=cohttp://cvs.php.net/viewvc.cgi/php-src/php.ini-dist?view=co语法该文件的语法非常简单.空白字符和以分号开始的行被简单地忽略.章节标题(例如: [php])也被…
开启OB缓存的方式有如下两种: 1. php.ini中开启 output_buffering = 4096 启用了此指令,那么每个PHP脚本都相当于一开始就调用了ob_start()函数,PHP5.5默认已开启output_buffering = 4096 Xee:我的php是5.4.33默认开启了output_buffering = 4096,在浏览器中是显示很正常,但是在php cli下,就会显示,”failed to flush buffer. No buffer to flush“的提示…
;;;;;;;;;;;;;;;;;;; 关于php.ini ;;;;;;;;;;;;;;;;;;;; 这个文件必须命名为'php.ini'并放置在httpd.conf中PHPINIDir指令指定的目录中.; 最新版本的php.ini可以在下面两个位置查看:; http://cvs.php.net/viewvc.cgi/php-src/php.ini-recommended?view=co; http://cvs.php.net/viewvc.cgi/php-src/php.ini-dist?vi…
;; 关于php.ini ;; ; 这个文件必须命名为'php.ini'并放置在httpd.conf中PHPINIDir指令指定的目录中. ; 最新版本的php.ini可以在下面两个位置查看: ; http://cvs.php.net/viewvc.cgi/php-src/php.ini-recommended?view=co ; http://cvs.php.net/viewvc.cgi/php-src/php.ini-dist?view=co ;; 语法 ;; ; 该文件的语法非常简单.空白…
原文来自:http://www.veryhuo.com/a/view/41466.html 如果您刚刚开始学习PHP,可能有许多函数需要研究,今天我们就来学习一下PHP Header()的使用方法,更多的使用说明,请您参照PHP中文手册,下面是关于header函数的详细使用说明 不管页面有多少header,它会执行最后一个,不过是有条件的,例如: header('Location:http://www.liehuo.net'); header('Location:http://www.g.cn'…
[PHP] ;;;;;;;;;;;;;;;;;;;; About php.ini   ;;;;;;;;;;;;;;;;;;;;; PHP's initialization file, generally called php.ini, is responsible for ; configuring many of the aspects of PHP's behavior.    ;PHP的初始化文件,命名为php.ini,负责配置PHP的各种行为和功能. ; PHP attempts to…
详见: https://my.oschina.net/miaowang/blog/299546 这个文件必须命名为''php.ini''并放置在httpd.conf中的PHPIniDir指令指定的目录中.最新版本的php.ini可以在下面两个位置查看:http://cvs.php.net/viewvc.cgi/php-src/php.ini-recommended?view=cohttp://cvs.php.net/viewvc.cgi/php-src/php.ini-dist?view=co语…
;;;;;;;;;;;;;;;; 简介 ;;;;;;;;;;;;;;;;; 本文并非是对英文版 php.ini 的简单翻译,而是参考了众多资料以后,结合自己的理解,增加了许多内容,; 包括在原有 php.ini 基础上增加了一些实用模块的配置说明,同时对文件内容的安排进行了调整.; 由于作者不喜欢 no-free 的玩意儿,所以删除了除 MySQL 和 PostgreSQL 以外的其他数据库模块配置选项. ;;;;;;;;;;;;;;;;;;; 关于php.ini ;;;;;;;;;;;;;;;…
GZIP(GNU-ZIP)是一种压缩技术.经过GZIP压缩后页面大小可以变为原来的30%甚至更小.这样用户浏览的时候就会感觉很爽很愉快! 要实现GZIP压缩页面需要浏览器和服务器共同支持,实际上就是服务器压缩,传到浏览器后浏览器解压并解析.浏览器那边不需要我们担心,因为现在绝大多数浏览器都支持解析GZIP过的页面.我们只要把页面在服务器端压缩再输出到浏览器就行了. 有点罗嗦,下面说正事: 正如要制作压缩饼干,先要拿到原料,要压缩一个页面,首先要获得要输出的内容.PHP中的ob_start()(o…
饼干是这样压缩的——PHP使用zlib扩展实现页面GZIP压缩输出 GZIP(GNU-ZIP)是一种压缩技术.经过GZIP压缩后页面大小可以变为原来的30%甚至更小.这样用户浏览的时候就会感觉很爽很愉快!要实现GZIP压缩页面需要浏览器和服务器共同支持,实际上就是服务器压缩,传到浏览器后浏览器解压并解析.浏览器那边不需要我们担心,因为现在绝大多数浏览器都支持解析GZIP过的页面.我们只要把页面在服务器端压缩再输出到浏览器就行了. 有点罗嗦,下面说正事: 正如要制作压缩饼干,先要拿到原料,要压缩一…
很多框架的模板引擎都有页面静态化的功能  目的是为了优化网站运行时间 静态化分两种  纯静态和伪静态 一. 纯静态 纯静态展示的是实实在在的静态页面 运行PHP程序 判断是否存在静态页 如果存在 展示静态页 如果不存在 生成静态页 再展示实现方法 是PHP的ob缓冲 //PHP程序一系列逻辑 并将要展示的数据赋值给某些变量准备在模板中使用 ob_start();//开启ob缓冲区 也可以在配置文件中开启 require_once('template/index.php');//引入模板文件 也有…
为什么要页面静态化? 1.动态文件执行过程:语法分析-编译-运行 2.静态文件,不需要编译,减少了服务器脚本运行的时间,降低了服务器的响应时间,直接运行,响应速度快:如果页面中一些内容不经常改动,动态页面静态化是非常有效的加速方法.(纯静态,伪静态还是需要PHP解释器的) 3.生成静态URL利于SEO,利于蜘蛛抓取和收录,有利于提升排名 优化页面响应时间方法 1.动态页面静态化 2.优化数据库 3.负载均衡 4.使用缓存等等 //动态页面静态化一般用于不经常改动的地方,频繁改动的地方一般不适用静…
bufferbuffer是一个内存地址空间,Linux系统默认大小一般为4096(4kb),即一个内存页.主要用于存储速度不同步的设备或者优先级不同的设备之间传办理数据的区域.通过buffer,可以使进程这间的相互等待变少.这里说一个通俗一点的例子,你打开文本编辑器编辑一个文件的时候,你每输入一个字符,操作系统并不会立即把这个字符直接写入到磁盘,而是先写入到buffer,当写满了一个buffer的时候,才会把buffer中的数据写入磁盘,当然当调用内核函数flush()的时候,强制要求把buff…
这个文件必须命名为''php.ini''并放置在httpd.conf中的PHPIniDir指令指定的目录中.最新版本的php.ini可以在下面两个位置查看:http://cvs.php.net/viewvc.cgi/php-src/php.ini-recommended?view=cohttp://cvs.php.net/viewvc.cgi/php-src/php.ini-dist?view=co语法该文件的语法非常简单.空白字符和以分号开始的行被简单地忽略.章节标题(例如: [php])也被…
bufferbuffer是一个内存地址空间,Linux系统默认大小一般为4096(4kb),即一个内存页.主要用于存储速度不同步的设备或者优先级不同的设备之间传办理数据的区域.通过buffer,可以使进程这间的相互等待变少.这里说一个通俗一点的例子,你打开文本编辑器编辑一个文件的时候,你每输入一个字符,操作系统并不会立即把这个字符直接写入到磁盘,而是先写入到buffer,当写满了一个buffer的时候,才会把buffer中的数据写入磁盘,当然当调用内核函数flush()的时候,强制要求把buff…
经过GZIP压缩后页面大小可以变为原来的30%甚至更小.要实现GZIP压缩页面需要浏览器和服务器共同支持, 实际上就是服务器压缩,传到浏览器后浏览器解压并解析.浏览器那边不需要我们担心,因为现在绝大多数浏览器都支持解析GZIP过的页面.我们只要把页面在服务器端压缩再输出到浏览器就行了. 1  正如要制作压缩饼干,先要拿到原料,要压缩一个页面,首先要获得要输出的内容.PHP中的ob_start()(ob => output buffer)函数可以实现这个功能,它可以把程序里准备输出的内容先放到一个…
作者:金步国 版权声明 本文作者是一位开源理念的坚定支持者,所以本文虽然不是软件,但是遵照开源的精神发布. 无担保:本文作者不保证作品内容准确无误,亦不承担任何由于使用此文档所导致的损失. 自由使用:任何人都可以自由的阅读/链接/打印此文档,无需任何附加条件. 名誉权:任何人都可以自由的转载/引用/再创作此文档,但必须保留作者署名并注明出处. 其他作品 本文作者十分愿意与他人分享劳动成果,如果你对我的其他翻译作品或者技术文章有兴趣,可以在如下位置查看现有的作品集: 金步国作品集 [ http:/…
今天细看了下配置文件 有很多没用过的 就从网上搜了一篇 常看看 ;;;;;;;;;;;;;;;; 简介 ;;;;;;;;;;;;;;;;; 本文并非是对英文版 php.ini 的简单翻译,而是参考了众多资料以后,结合自己的理解,增加了许多内容,; 包括在原有 php.ini 基础上增加了一些实用模块的配置说明,同时对文件内容的安排进行了调整.; 由于作者不喜欢 no-free 的玩意儿,所以删除了除 MySQL 和 PostgreSQL 以外的其他数据库模块配置选项. ;;;;;;;;;;;;;…
[转载]最完整PHP.INI中文版 http://www.21andy.com/blog/20090718/1344.html 最完整PHP.INI中文版 适用于 php-5.2 的 php.ini 中文版作者:金步国 ;;;;;;;;;;;;;;;;;;; 关于php.ini ;;;;;;;;;;;;;;;;;;;; 这个文件必须命名为'php.ini'并放置在httpd.conf中PHPINIDir指令指定的目录中.; 最新版本的php.ini可以在下面两个位置查看:; http://cvs…
Apache 使用gzip 压缩页面加快网站访问速度 介绍: 网页压缩来进一步提升网页的浏览速度,它完全不需要任何的成本,只不过是会让您的服务器CPU占用率稍微提升一两个百分点而已或者更少.   原理:   网页压缩是一项由 WEB 服务器和浏览器之间共同遵守的协议,也就是说 WEB 服务器和浏览器都必须支持该技术,流行的浏览器都是支持的,包括 IE.FireFox.Opera 等:服务器有 Apache 和 IIS 等.双方的协商过程如下: 1.首先浏览器请求某个 URL 地址,并在请求的头…
介绍: 网页压缩来进一步提升网页的浏览速度,它完全不需要任何的成本,只不过是会让您的服务器CPU占用率稍微提升一两个百分点而已或者更少.   原理:   网页压缩是一项由 WEB 服务器和浏览器之间共同遵守的协议,也就是说 WEB 服务器和浏览器都必须支持该技术,流行的浏览器都是支持的,包括 IE.FireFox.Opera 等:服务器有 Apache 和 IIS 等.双方的协商过程如下: 1.首先浏览器请求某个 URL 地址,并在请求的头 (head) 中设置属性 accept-encodin…
提示:与直接将结果输出到浏览器的任何内容一样,可以使用输出控制函数(http://www.php.net/./en/ref.outcontrol.php)捕获此函数的输出,并将其保存在字符串(例如)中. ob_start(); imagepng($image); $image_data = ob_get_contents(); ob_end_clean(); 例如,现在可以将$image_data保存到数据库中,而不是首先将其写入文件,然后从中读取数据.只是不要忘记使用MySQL LIPENEX…
在需要使用输出缓存区的时候,一般会在代码中加上ob_start()这个函数. 这是因为php.ini中output_buffering设置为off时,则缓存区处于关闭状态,需要用ob_start()打开缓存区.如果output_buffering为On时,写ob_start(),不会有什么影响,只是为了保险起见,防止output_buffering未开启. 实例代码: <?php ob_start();//开启缓冲区 echo "这是第一次输出内容!\n"; $a[1] = ob…