php - FPDF错误: Some data has already been output,无法发送PDF

标签 php drupal fpdf

我正在使用 fpdf我的项目的库,我正在使用它来扩展其中一个 drupal 模块。这些行

$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
$pdf->Cell(40,10,'Hello World!');
$pdf->Output();

给我一​​个错误:FPDF错误:一些数据已经输出,无法发送PDF

我尝试在 drupal 区域名称 test.php 之外的单独文件中创建它,并且在查看时它有效。这里的任何人都知道为什么这不起作用?或者这里的任何人都可以为我指出一个正确的 pdf 库,我可以在 drupal 中使用它来查看 HTML 到 PDF 格式。

最佳答案

为了让 fpdf 正常工作,除了 fpdf 生成的内容之外根本不能有 任何 输出。例如,这将起作用:

<?php
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
$pdf->Cell(40,10,'Hello World!');
$pdf->Output();
?>

虽然这不会(注意开始 <? 标记前的前导空格)

 <?php
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
$pdf->Cell(40,10,'Hello World!');
$pdf->Output();
?>

另外,这也不起作用(echo 会破坏它):

<?php
echo "About to create pdf";
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
$pdf->Cell(40,10,'Hello World!');
$pdf->Output();
?>

我不确定 drupal 方面,但我知道非 fpdf 输出绝对为零是 fpdf 工作的要求。

关于php - FPDF错误: Some data has already been output,无法发送PDF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9475686/

相关文章:

php - 在 php 变量中使用 html 中的 php include 函数

php - 根据公共(public)后缀列表从 URL 中提取注册域

mysql - drupal删除未使用的模块

Drupal 8 - 以编程方式将机器名称添加为类 block

drupal - 如何从标签上删除冒号?

php - 如果与$ _POST ['THIS']相匹配,则返回MySQL表;在FPDF脚本中

php - 在共享服务器上设置 Yii

php - ZF3 中的服务管理器

php - FPDF output() 以 html 扩展名保存文件

php - FPDF 错误 "Unable to create output file"