码迷,mamicode.com
首页 > Web开发 > 详细

PHP中的ob_start() 的使用

时间:2014-05-27 16:05:43      阅读:328      评论:0      收藏:0      [点我收藏+]

标签:c   tar   a   get   文件   使用   

1.在PHP编程中, 我们经常会遇到一些直接产生输出的函数, 如passthru(),readfile(), var_dump() 等. 但有时我们想把这些函数的输出导入到文件中,或者先经过处理再输出, 或者把这些函数的输出作为字符串来处理.
  这时我们就要用到 Output Buffer(输出缓冲) 函数了.

处理输出缓冲的函数主要有这么几个:

ob_start() 开始输出缓冲, 这时PHP停止输出, 在这以后的输出都被转到一个内部的缓冲里.

ob_get_contents() 这个函数返回内部缓冲的内容. 这就等于把这些输出都变成了字符串.

ob_get_ length() 返回内部缓冲的长度.

ob_end_flush() 结束输出缓冲, 并输出缓冲里的内容. 在这以后的输出都是正常输出.

ob_end_clean() 结束输出缓冲, 并扔掉缓冲里的内容.

 

举个例子:

 

define(‘ob_start‘,true);
if(ob_start){
  echo ‘<p>start is ok</p>‘.‘<br>‘;
}
echo ‘sunzhiyan‘.‘<br>‘;

//var_dump($var);
$out = ob_get_contents();
ob_end_clean();

ob_end_flush();
echo ‘<pre>‘.$out.‘</pre>‘ ;

 

 

这里我们只有通过最后的输出$out,才能能到前面的输出结果

start is ok


sunzhiyan

这里值得注意的问题是,你的输出必须在缓冲结束后,才能够输出,在没有结束的情况下,你输出的时候,该输出只是再次的添加到输出缓冲里面而已,只有再次的用ob_get_contents()
函数返回存入到输出缓冲里面的内容,才能得到需要输出的值

 

 

PHP中的ob_start() 的使用,布布扣,bubuko.com

PHP中的ob_start() 的使用

标签:c   tar   a   get   文件   使用   

原文地址:http://www.cnblogs.com/sunxun/p/3753217.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!