如果可以的话,我是否允许在我的 php 文件中包含两个或更多文件,结束一个并开始另一个ob_start();
的正确方法是什么?ob_start();
1954 次
2 回答
6
从手册:
输出缓冲区是可堆叠的,也就是说,您可以在另一个 ob_start() 处于活动状态时调用 ob_start()。只需确保调用 ob_end_flush() 的次数适当。如果多个输出回调函数处于活动状态,则输出将按嵌套顺序依次通过每个回调函数进行过滤。
除了堆叠(嵌套)之外,您还可以按顺序拥有单独的块。
<?
ob_start();
echo "Foo";
ob_end_flush(); // outputs buffer contents and turns off output buffering
ob_start();
echo "Bar";
ob_end_flush();
?>
于 2010-10-31T01:24:52.367 回答
0
您可以在一个页面上执行多个 ob_start()。你用 ob_end_clean() 结束 ob_start()。
ob_start();
$postOutput = preg_replace('/<img[^>]+./','', ob_get_contents());
ob_end_clean();
echo $postOutput;
于 2010-10-31T01:25:03.407 回答