【发布时间】:2013-06-03 14:04:19
【问题描述】:
我正在使用 mPDF 从 PHP 生成的站点动态创建 PDF。
我的代码如下所示:
ini_set('memory_limit', '-1');
include('../mpdf/mpdf.php');
$numPresup = "presupuesto_".$_GET['numPresup'].".html";
echo $numPresup;
$mpdf=new mPDF();
$stylesheet = file_get_contents('design.css');
$mpdf->WriteHTML($stylesheet,1);
$mpdf->WriteHTML(file_get_contents($numPresup));
$mpdf->Output();
unlink($numPresup);
exit;
但我不断收到此错误:
Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhost/artidental.com/home/html/Presupuestos/pdfExport.php:5) in /var/www/vhost/artidental.com/home/html/mpdf/mpdf.php on line 7049
Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhost/artidental.com/home/html/Presupuestos/pdfExport.php:5) in /var/www/vhost/artidental.com/home/html/mpdf/mpdf.php on line 1727
mPDF error: Some data has already been output to browser, can't send PDF file
任何线索可能是什么问题? PDF 文件可以正常工作,因为我使用“Hello World”测试了 PDF 并且可以正常工作。
谢谢
【问题讨论】:
-
删除你那里的回声......如果你已经输出了一些东西,你就不能有文件输出。
-
在询问之前始终使用搜索引擎。
-
$mpdf->Output 尝试设置内容类型标头。但它不能因为你已经开始输出(使用回声),只需将其删除
-
乍一看,可能与
echo有关。您可以尝试删除它或将其替换为error_log($numPresup);以将输出记录到 php 日志文件中吗?