다른 것들 중에서도 전자 메일을 보내는 컨트롤러가 있습니다. 전자 메일 보내기가 시작되기 전에 사용자에게 메시지를 표시해야합니다 (그렇지 않으면 화면이 멈추는 것처럼 보입니다).
그래서 컨트롤러의 끝 부분에 도달하기 전에 컨트롤러의 시작 부분에 설정된 메시지를 반향 출력합니까? 아니면 다른 방향으로 모두 함께 생각해야합니까?ZF에서 출력을 플러시하는 방법
0
A
답변
1
어쩌면보십시오 :
<?php
//...
public function someAction()
{
echo "Something";
ob_flush();flush();
}
이 forum post이 문제에 대해 설명합니다. 그들은 다음을 제안합니다 :
<?php
$frontController = Zend_Controller_Front::getInstance();
$frontController->setParam('disableOutputBuffering', true);
그리고 나서 ob_flush();flush();
기술을 수행하십시오.
0
종료 기능을 사용하여 이메일을 보내보십시오. 또한 출력 버퍼를 플러시하면 사용자가 렌더링 된 페이지를 먼저 볼 수있게됩니다. 코드 호출에서 : 질문의 메일의 경우
function send_email($params) {
ob_flush();flush();
// Send your email here
}
1
:
register_shutdown_function('send_email', $params);
그리고 한 다음과 같은 기능을 가지고있다.
요청에 따라 메시지를 보내야하는 시점에 따라 메시지 큐 (어쩌면 db 테이블)를 만들고 해당 테이블에 레코드를 작성한 다음 cron 프로세스를 실행하는 것이 좋습니다 대기열을 소비하고, 보내지 않은 메시지를 보내고, 보내지 않은 것으로 표시합니다.
관련 문제
- 1. NSString의 캐시를 비우거나 플러시하는 방법
- 2. 부스트를 사용하여 소켓을 플러시하는 방법
- 3. bash를 사용하여 파이프를 플러시하는 방법
- 4. TFileStream을 플러시하는 방법은 무엇입니까?
- 5. ZF에서 "글로벌"구성을 어떻게 사용합니까?
- 6. Mac에서 perl 파일을 플러시하는 방법은 무엇입니까?
- 7. ZF에서 개체를 만들려고했지만 응용 프로그램 오류가 발생했습니다.
- 8. ZF에서 가장 많이 쓰는 일반 수업은 무엇입니까?
- 9. 출력을 얻는 방법?
- 10. 배치 출력을 숨기는 방법
- 11. sed로 출력을 닦아내는 방법?
- 12. Papi 출력을 해석하는 방법
- 13. PHP에서 출력을 이스케이프하는 방법
- 14. JSON 출력을 출력하는 방법
- 15. 출력을 이해하는 방법?
- 16. 해시 맵을 디스크에 정렬 된 집합으로 플러시하는 가장 빠른 방법
- 17. EntLib 캐싱을 위해 진행중인 모든 캐쉬를 플러시하는 방법
- 18. UI를 플러시하는 방법 실행을 계속하기 전에 스레드 액션
- 19. 어떻게 JQuery와의 자동 완성의 캐시를 플러시하는 방법 JQuery와
- 20. Erlang에서 io 버퍼를 플러시하는 방법은 무엇입니까?
- 21. macports 설치 대기열을 플러시하는 방법은 무엇입니까?
- 22. 파이썬에서 입력 스트림을 플러시하는 방법은 무엇입니까?
- 23. HttpListener 응답 스트림을 플러시하는 방법은 무엇입니까?
- 24. powerpc에서 전체 명령 캐시를 플러시하는 방법은 무엇입니까?
- 25. .net BackgroundWorker에서 출력을 버퍼링하는 방법?
- 26. codeigniter 데이터베이스 출력을 제한하는 방법
- 27. ffmpeg 오류 출력을 표시하는 방법
- 28. Xcode 콘솔 출력을 읽는 방법?
- 29. PHP에서 쉘 출력을 조작하는 방법
- 30. xsd.exe/c 출력을 사용하는 방법
나는 거기에 있어야 할 레이아웃이 필요합니다. –
그런 경우 컨트롤러가 실행 된 후에 레이아웃이 렌더링되기 때문에 뷰가로드 될 때 일종의 AJAX 요청을 할 수 있습니다. – Chris
그렇게 생각해 ... 고마워! –