如何将DOMPDF生成的内容保存到文件?

我正在使用Dompdf来创buildPDF文件,但我不知道为什么它不保存创build的PDF到服务器。

有任何想法吗?

require_once("./pdf/dompdf_config.inc.php"); $html = '<html><body>'. '<p>Put your html here, or generate it with your favourite '. 'templating system.</p>'. '</body></html>'; $dompdf = new DOMPDF(); $dompdf->load_html($html); $dompdf->render(); file_put_contents('Brochure.pdf', $dompdf->output()); 

我刚刚使用dompdf和代码是有点不同,但它的工作。

这里是:

 require_once("./pdf/dompdf_config.inc.php"); $files = glob("./pdf/include/*.php"); foreach($files as $file) include_once($file); $html = '<html><body>'. '<p>Put your html here, or generate it with your favourite '. 'templating system.</p>'. '</body></html>'; $dompdf = new DOMPDF(); $dompdf->load_html($html); $dompdf->render(); $output = $dompdf->output(); file_put_contents('Brochure.pdf', $output); 

这里唯一不同的是包含目录中的所有文件。

除此之外,我唯一的build议是指定一个完整的目录path来写文件,而不仅仅是文件名。

我testing了你的代码,唯一可以看到的问题是缺less给你写目录的权限。

给你需要放置文件的目录提供“写入”权限。 在你的情况下,它是当前的目录。

在linux中使用“chmod”。

如果您在Windows中,将启用了“写入”的“Everyone”添加到目录的安全选项卡中。

 <?php $content='<table width="100%" border="1">'; $content.='<tr><th>name</th><th>email</th><th>contact</th><th>address</th><th>city</th><th>country</th><th>postcode</th></tr>'; for ($index = 0; $index < 10; $index++) { $content.='<tr><td>nadim</td><td>nadim.sheikh.07@gmail.com</td><td>7737033665</td><td>247 dehligate</td><td>udaipur</td><td>india</td><td>313001</td></tr>'; } $content.='</table>'; //$html = file_get_contents('pdf.php'); if(isset($_POST['pdf'])){ require_once('./dompdf/dompdf_config.inc.php'); $dompdf = new DOMPDF; $dompdf->load_html($content); $dompdf->render(); $dompdf->stream("hello.pdf"); } ?> <html> <body> <form action="#" method="post"> <button name="pdf" type="submit">export</button> <table width="100%" border="1"> <tr><th>name</th><th>email</th><th>contact</th><th>address</th><th>city</th><th>country</th><th>postcode</th></tr> <?php for ($index = 0; $index < 10; $index++) { ?> <tr><td>nadim</td><td>nadim.sheikh.07@gmail.com</td><td>7737033665</td><td>247 dehligate</td><td>udaipur</td><td>india</td><td>313001</td></tr> <?php } ?> </table> </form> </body> </html>