Php ob_clean()清洁所有级别的ob?
我刚刚有一个实例,在为ajax调用回显json之前,我正在执行ob_clean()。问题是,当时我有两个级别的ob,而ob_clean()只清除内部ob。为了让他们两个都清白,我只是清白了Php ob_clean()清洁所有级别的ob?,php,ajax,output-buffering,Php,Ajax,Output Buffering,我刚刚有一个实例,在为ajax调用回显json之前,我正在执行ob_clean()。问题是,当时我有两个级别的ob,而ob_clean()只清除内部ob。为了让他们两个都清白,我只是清白了 ob_clean(); ob_clean(); 清洁所有当前缓冲区的正确方法是什么 编辑:是的,这个问题是类似的,但另一个是关于冲洗,我是说清洁。有一些事情我不明白,比如,结束,结束,结束等等,因此,答案将不同于另一个 也就是说: 鉴于: : 工作 导致无休止的循环,最终超时 ob_clean(); ob_
ob_clean();
ob_clean();
清洁所有当前缓冲区的正确方法是什么
编辑:是的,这个问题是类似的,但另一个是关于冲洗,我是说清洁。有一些事情我不明白,比如,结束,结束,结束等等,因此,答案将不同于另一个
也就是说:
鉴于:
:
工作
导致无休止的循环,最终超时
ob_clean();
ob_clean();
ob_clean();
ob_clean();
ob_clean();
不起作用。(仍然回荡着:“之前”)
工作
工作您只需在
的同时
循环中运行ob\u get\u level()
,例如:
// put this line at the beginning of your script
// to disable auto-buffering through output_buffering ini directive
if (ob_get_level()) ob_end_clean();
ob_start();
ob_start();
ob_start();
ob_start();
$out = '';
while (ob_get_level())
{
echo ob_get_level()."\n";
$out .= ob_get_clean();
}
echo $out;
没有。由您跟踪已启动的ob缓冲区数量。这是为了防止“子”代码与“父”代码所建立的缓冲区发生冲突。确定的可能重复,我需要告诉yall:如果您像
ob_start();包括“view.php”$out=ob_get_clean如果你的视图中有一个错误,它会破坏你的缓冲区,并在你不想要的地方刷新,等等。
while (ob_get_level()){
ob_clean();
}
ob_clean();
ob_clean();
ob_clean();
ob_clean();
ob_clean();
ob_get_clean();
ob_get_clean();
ob_end_clean();
ob_end_clean();
// put this line at the beginning of your script
// to disable auto-buffering through output_buffering ini directive
if (ob_get_level()) ob_end_clean();
ob_start();
ob_start();
ob_start();
ob_start();
$out = '';
while (ob_get_level())
{
echo ob_get_level()."\n";
$out .= ob_get_clean();
}
echo $out;