如何使用PHP将dom pdf生成的pdf文件添加到ZipArchive

时间:2014-02-21 12:10:26

标签: php dompdf ziparchive

我使用dom pdf从html文本内容创建.pdf文件。同时我必须创建一个zip存档并将该pdf文件添加到zip。

该zip包含更多两个文件夹。将DOMPDF生成的文件添加到zip存档时,我陷入困境。任何人都可以为我提供解决方案吗?

1 个答案:

答案 0 :(得分:3)

使用此代码从html内容制作pdf文件。

$html = "put your html code here";
$dompdf = new DOMPDF();
$dompdf->load_html($html);
$dompdf->set_paper("a4", "portrait");
$dompdf->render();
$output = $dompdf->output();
file_put_contents('Otherfile.pdf', $output);

使用render()函数后,使用output()函数将pdf文件存储在变量中。 并使用file_put_contents()将该内容放入新文件中。然后使用该文件使用以下代码放入.zip。

$files = 'Otherfile.pdf';
$zipname = 'zipname.zip';
$zip = new ZipArchive;      
$zip->open($zipname, ZipArchive::OVERWRITE);
$zip->addFile($files);

$zip->close();
header('Content-Type: application/zip');
header("Content-Disposition: attachment; filename='".$zipname."'");
header("Pragma: no-cache"); 
header("Expires: 0");
header('Cache-Control: must-revalidate');
header('Content-Length: ' . filesize($zipname));