2011-01-29 4 views
5

나는 Kohana 3을 사용하고 있으며 Kohana_Controller를 확장 한 컨트롤러가 있습니다. (에코 '상태 메시지')의 그러나 아무도Kohana 3 명령 줄 출력 버퍼링?

php /path/to//index.php --uri="url/path" 

그냥 잘 작동하지만이 특정 스크립트는 시간이 오래 걸리고 실행하는 동안 나는 상태 메시지를 반향 오전 : 나는 사용하지 않고 명령 줄에서 호출 메시지는 스크립트 실행이 완료 될 때까지 나타납니다.

상태 메시지가 표시되는 것을보고 싶습니다. 아무에게도 어떻게 할 수 있는지 알려주시겠습니까?

감사

답변

8

그것은 Kohana과 같다 : (가능성이 bootsrap에서 호출) 초기화()는 ob_start() 호출합니다. 이것은 그 시점 이후의 모든 출력이 출력 버퍼에 포함된다는 것을 의미합니다. 이 작업을 중단하려면 컨트롤러의 이전 메서드에서 ob_end_flush()을 추가하여 이미 출력 된 내용을 출력하고 출력 버퍼링을 해제하십시오. 그 후에 만들어지는 모든 에코는 즉시 출력되어야합니다.

그래서 모양처럼 사용하여 코드 :이 내 문제를 해결

Controller_CLI extends Controller { 
     public function before() { 
       // empty the output buffre 
       ob_end_flush(); 

       // call parent before() just incase there's anything 
       // in the parent before that you need/want to execute 
       parent::before(); 
     } 
    } 
+0

, 감사 –