DOMPDF: Nie można przesyłać strumieniowo pliku PDF: nagłówki już wysłane

To pytanie zostało podniesione setki razy na różnych forach; niektóre zostały rozwiązane, inne nie. Sprawdziłem wiele zasobów, ale nie udało się rozwiązać mojego problemu. Generuję stronę php przy użyciu szablonu smarty opartego na wejściu formularza HTML i przesłanych plików. Korzystając z dompdf, chcę zapisać wygenerowaną stronę jako plik pdf. Gdy użytkownik przesyła dane wieloczęściowe / formularze, dane są wysyłane do siebie. Następnie przechodzi proces walidacji. Gdy wszystko jest w porządku, nowa strona jest generowana przy użyciu pliku szablonu. Nie ma wyjścia, zamiast tego dompdf wykorzystuje plik szablonu do strumieniowania pliku pdf. Po rozwiązaniu kilku etapów problemów, takich jak „Nie znaleziono DOMPDF”, niewystarczająca ilość pamięci itp., Utknąłem z błędem „Nie można przesłać strumieniowo wysłanych plików PDF: nagłówki”. Jednym z najczęstszych problemów jest obecność przerwania linii, białych znaków lub jakichkolwiek danych wyjściowych przed wywołaniem stream (). Sprawdziłem białe znaki przed i po?. Nie ma też instrukcji print_f ani echo. Jak mogę rozwiązać ten problem? Gdzie leży problem ... w pliku smarty szablonu lub w samym pliku php? Oto kod:

require_once("dompdf/dompdf_config.inc.php");
spl_autoload_register('DOMPDF_autoload');
$html = $smarty->fetch('index.tpl');
$dompdf = new DOMPDF();
$dompdf->load_html($html);
$dompdf->set_paper('a4', 'portrait');
$dompdf->render();
$dompdf->stream("newfile.pdf");

questionAnswers(9)

yourAnswerToTheQuestion