Как очистить буфер Zend Output на этапе контроллера? - PullRequest
1 голос
/ 04 июня 2010

У меня есть Zend Controller, который предоставляет файлы пользователям.

Я использовал помощник действий Noginn SendFile для фактической потоковой передачи файла, но код просто использует readfile ($ path) для помещения содержимого файла в буфер после установки MIME, Content-Type и т. Д.

Проблема в том, что файл, который поступает по каналу, имеет в начале дополнительный пустой байт 0x20, не разбивающий поезд для текстовых файлов, но явно фатальный для изображений

В моем контроллере есть следующий код, чтобы остановить рендеринг скриптов вида:

$this->_helper->viewRenderer->setNoRender();
$this->_helper->layout->disableLayout();

но я думаю, что пробел все еще помещается в выходной буфер где-то до того, как файл начинает передаваться. Есть ли способ очистить буфер вывода перед потоковой передачей файла?

Спасибо, заранее.

1 Ответ

4 голосов
/ 04 июня 2010

Ответ до боли очевиден, когда я выпил кофе

ob_clean ();

...