使用 Dompdf 保存 PDF 文件
Posted
技术标签:
【中文标题】使用 Dompdf 保存 PDF 文件【英文标题】:Save PDF file with Dompdf 【发布时间】:2015-09-03 08:52:21 【问题描述】:使用Dompdf将数据存储在pdf文件中:
这个功能很好用:
$pdf = \App::make('dompdf.wrapper');
$pdf->loadhtml('<h1>Test</h1> ');
return $pdf->stream();
现在,当尝试
$pdf = \App::make('dompdf.wrapper');
$pdf->loadHTML('<h1>Test</h1> ');
file_put_contents("test.pdf", $pdf->output());
得到错误:
file_put_contents(test.pdf): failed to open stream: Permission denied
我需要创建一些额外的文件夹来保存文件吗?
Tnx,P
【问题讨论】:
安静简单,你没有足够的权限写入文件夹/目录?检查您的网络用户是否对文件夹和文件具有所需的读/写权限。 嗨,tnx 时间!没关系,我也尝试使用特定路径,同样的错误...但是我在文档中找不到该文件将保存在哪个文件夹中,所以要知道要更改的权限... 【参考方案1】:要将生成的pdf
保存到文件中,请使用output()
,即:
$dompdf = new Dompdf();
$dompdf->loadHtml('<h1>hello world</h1>');
$output = $dompdf->output();
file_put_contents('filename.pdf', $output);
【讨论】:
使用也可以使用路径:file_put_contents('/home/website/public_html/aap_path/temp/filename.pdf', $output); 是的,您也可以使用绝对路径而不是相对路径。【参考方案2】:试试这个
$pdf->load_html('<h1>Test</h1>');
$pdf->render();
$pdf->stream("data.pdf");
【讨论】:
【参考方案3】:这解决了问题:
return PDF::loadHTML('<h1>Test</h1> ')->save('path-/my_stored_file.pdf');
这个问题帮助:
dompdf: loading html files to render, doesn't work
Tnx, P
【讨论】:
以上是关于使用 Dompdf 保存 PDF 文件的主要内容,如果未能解决你的问题,请参考以下文章