保存的内容


Save contents of

我有一个文件,它生成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得到了一个输出错误。

感谢的任何帮助

您需要使用ob_end_clean()而不是ob_flush();

ob_flush();将打印html,而您不希望这样。由于FPDF创建了一个pdf文件,并且需要操作标题(成为pdf文件)。如果您首先回显/打印某个内容,php将自动设置默认标头。一旦设置了它们,库就无法修改它们,从而导致错误。

将ob的内容放入var($contents = ob_get_contents();)后,可以使用ob_end_clean()。这将丢弃缓冲区的内容并停止缓冲。