PHP 输出buffer控制
来源:互联网 发布:淘宝店铺可以转让 编辑:程序博客网 时间:2024/05/16 10:23
比如你用得到服务器和客户端的设置信息,但是这个信息会因为客户端的不同而不同,如果想要保存phpinfo()函数的输出怎么办呢?在没有缓冲区控制之前,可以说一点办法也没有,但是有了缓冲区的控制,我们可以轻松的解决:
- < ?php
- ob_start(); //打开缓冲区
- phpinfo(); //使用phpinfo函数
- $info=ob_get_contents(); //得到缓冲区的内容并且赋值给$info
- $file=fopen(’info.txt’,'w’); //打开文件info.txt
- fwrite($file,$info); //写入信息到info.txt
- fclose($file); //关闭文件info.txt
- ?>
用以上的方法,就可以把不同用户的phpinfo信息保存下来,这在以前恐怕没有办法办到!其实上面就是将一些“过程”转化为“函数”的方法!
或许有人会问:“难道就这个样子吗?还有没有其他用途?”当然有了,比如笔者论坛的PHP 语法加亮显示就和这个有关(PHP默认的语法加亮显示函数会直接输出,不能保存结果,如果在每次调用都显示恐怕会很浪费CPU,笔者的论坛就把语法加亮函数显示的结果用控制缓冲区的方法保留了)。
可能现在大家对PHP ob_start()函数的功能有了一定的了解,上面的一个例子看似简单,但实际上已经掌握了使用ob_start()的要点。
<1>.使用PHP ob_start()函数打开browser的cache,这样可以保证cache的内容在你调用flush(),ob_end_flush()(或程序执行完毕)之前不会被输出。
<2>.现在的你应该知道你所拥有的优势:可以在任何输出内容后面使用header,setcookie以及session,这是PHP ob_start()函数一个很大的特点;也可以使用ob_start的参数,在cache被写入后,然后自动运行命令,比如ob_start(”ob_gzhandler”);而我们最常用的做法是用ob_get_contents()得到cache中的内容,然后再进行处理……
<3>.当处理完毕后,我们可以使用各种方法输出,flush(),ob_end_flush(),以及等到程序执行完毕后的自动输出。当然,如果你用的是ob_get_contents(),那么就要你自己控制输出方式了。
- PHP 输出buffer控制
- 利用php中的buffer control来控制输出
- PHP 输出缓存 Output Buffer
- 【整理】php输出缓存 output buffer
- php中的输出控制
- php输出控制
- PHP的输出控制
- PHP输出控制
- PHP输出缓冲控制
- MTK MT6169 clock buffer XO3输出控制方法
- PHP输出控制函数介绍
- php 缓存机制:输出控制
- PHP页面输出缓存控制
- php输出控制函数汇总
- 再说php输出缓冲控制那些事
- PHP输出缓冲控制(Output Control)总结
- php 输出缓冲控制(Output Control )
- Tomcat中的输出buffer
- 使python程序在Linux下一直运行
- Android 游戏开发之MediaPlayer、SoundPool以及AudioManager
- sAFghedsdgfs
- 如何在CSDN博客自定义栏目中添加“给我写信”
- Notice: Use of undefined constant submit - assumed 'submit'
- PHP 输出buffer控制
- Pig Distinct by fields
- maven入门教程
- PHP页面编码问题
- rw_semaphore
- cocos2dx 学习
- 排序算法系列-归并排序
- DOOV(朵唯) C1 最新miui刷机教程及usb调试限制破解
- conflicts with new declaration with 'C' linkage错误修改