나는 내가 ob_get_flush()에 대한 치명적인 오류가 laravel 4.이 코드는 다른 프레임 워크뿐만 laravel 좋은 작품 에서 출력 버퍼링에 문제가Laravel 및 출력 버퍼링
class Ajax
{
public function __construct()
{
if (Request::ajax())
{
ob_clean();
ob_start(function(){});
register_shutdown_function(array(&$this,'setOutput'));
}
}
public function setOutput()
{
$html = ob_get_flush();
}
}
오류 :
ob_get_flush(): failed to delete and flush buffer. No buffer to delete or flush
아약스 요청이있는 경우 클래스 생성자에서 ob_start를 호출했습니다. –
음, 'ob_start()'전에 'ob_clean();'을 수행 할 수 없어야합니다. 그러나 당신이 할 수 있다고 가정 해 봅시다,이 클래스에서 항상 아약스 요청이 먼저 발생합니까? 그렇지 않다면 여전히'ob_start()'를 시작하지 않았다. –
우리가 아약스 요청에 없다면 "register_shutdown_function"도 실행되지 않고 ob_get_flush()는 결코 호출되지 않을 것입니다. –