我有一个生成html的文件,并使用缓冲区
将其添加到php字符串<?php ob_start(); ?>
<table>
<tr>
<td>Content</td>
</tr>
</table>
<?php
$contents = ob_get_contents();
ob_flush();
mail($to, $subject, $contents, $headers);
?>
有没有办法使用php将字符串的内容保存为服务器上的pdf文件? 我已经尝试过使用FPDF,但它不起作用,因为内容位于页面顶部,我从fpdf得到输出错误。
任何帮助表示赞赏
答案 0 :(得分:3)
您需要使用ob_end_clean()
代替ob_flush();
ob_flush();
将打印html而您不希望这样。由于FPDF创建了一个pdf并且需要操纵标题(成为pdf)。如果你回显/打印一些东西,首先php将自动设置默认标题。一旦设置,库就无法修改它们,从而导致错误。
将ob的内容放入var($contents = ob_get_contents();
)后,您可以使用ob_end_clean()
。这将丢弃缓冲区的内容并停止缓冲。