首页 > php中的ob_start()应用

php中的ob_start()应用

php中的ob_start()函数的应用场景是什么时候,请讲解怎么用,谢谢。


我只知道一种用法,就是将var_dump等输出的内容以字符串的形式返回给浏览器,比如:

    
ob_start();
var_dmp($data);
$result = ob_get_clean();

对你输出内容作统一修改的时候,你可以用这组方法在输出页面前取到输出内容,然后做完你想做的事之后,再输出


比如你的程序需要输出一些内容到浏览器,而在输出的过程中因为某些异常或者错误需要放弃输出,则通过ob缓冲系统可以不把内容输出到浏览器(因为之前输出的内容还是缓冲中,可以随时清掉)。
比如某些函数是直接输出的,而你又想只捕捉这些输出而不让它们传到浏览器,也可以通过ob系统来进行捕捉。


延迟输出的时候有用

因为原来的php是按脚本顺序执行的 如果前面输出了内容 ,执行到后面又想对前面已经输出的内容要修改,这时候就有用
用法示例

<?php

function callback($buffer)
{
  // replace all the apples with oranges
  return (str_replace("apples", "oranges", $buffer));
}

ob_start("callback");

?>
<html>
<body>
<p>It's like comparing apples to oranges.</p>
</body>
</html>
<?php

ob_end_flush();

?> 
【热门文章】
【热门文章】