我有一些代码可以执行以下操作:
<?php
ob_flush();
ob_start();
echo $something;
ob_end_flush();
echo $another_thing;
?>
我可以看到$something
但不是$another_thing;
根据手册ob_end_flush()只是关闭输出缓冲,所以如果是这样的话,为什么我不能看到$another_thing;
就像我写的没有任何输出缓冲一样:
<?php
echo $something;
echo $another_thing;
?>
虽然我认为没有理由这样做,但我决定在flush()
之后尝试拨打ob_flush()
和echo $another_thing;
,但这也无济于事。
这样做的正确方法是什么,为什么上述工作没有?
由于
答案 0 :(得分:0)
原来问题出在其他地方了!
在上面设置$something;
的过程中,我在一个大模板中调用了一系列函数,并且在那里埋藏了一个exit
语句,所以问题与输出缓冲无关!