如何为我的 Sf2 应用程序的每个请求打开 output_buffering?
我需要这个来使用FirePHPBundle,但我更愿意在应用程序范围内使用它。
如何为我的 Sf2 应用程序的每个请求打开 output_buffering?
我需要这个来使用FirePHPBundle,但我更愿意在应用程序范围内使用它。
这样做的一个好地方是在 AppKernel 的init
方法中,框架还注册了各种错误处理程序和调试标志:
class AppKernel extends Kernel
{
...
public function init()
{
parent::init(); //do not forget to call this
if ($this->debug) {
ob_start();
}
}
}
这当然只会在开发环境中调用 ob_start
您不必担心在ob_start
这里调用,因为正如 php 手册所述:
输出缓冲区是可堆叠的,也就是说,您可以在另一个 ob_start() 处于活动状态时调用 ob_start()。只需确保调用 ob_end_flush() 的次数适当。如果多个输出回调函数处于活动状态,则输出将按嵌套顺序依次通过每个回调函数进行过滤。