Генерация нескольких PDF-файлов с помощью TCPDF и сохранение в zip-файле приводит к повреждению zip-файла.
Я создаю PDF-файлы с циклом, используя TCPDF, PDF-файлы создаются отлично, без ошибок. Я использую сервер wamp, поэтому файлы хранятся в C:\wamp64\tmp, сейчас я пытаюсь добавить сгенерированные файлы в zip-архив.
Это код, который у меня есть. Я проигнорировал содержимое pdf, чтобы сэкономить место, так как упомянул, что создание PDF работает отлично.
<?php
//$tmp is the path of temp folder C:\wamp64\tmp
$tmp = ini_get('upload_tmp_dir');
//The number of files that will be created
$num_contactos = sizeof($contactos);
$file = $tmp.'/my-pdf.zip';
$zip = new ZipArchive();
$zip->open($file, ZipArchive::OVERWRITE);
for ($i = 0; $i < $num_contactos; $i++) {
// create new PDF document
$pdf = new MYPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
// add a page
$pdf->AddPage();
$html = 'PAGE CONTENT';
// set core font
$pdf->SetFont('helvetica', '', 10);
// output the HTML content
$pdf->writeHTML($html, true, 0, true, true);
// reset pointer to the last page
$pdf->lastPage();
//PDF file is created in temp folder. This works fine.
$pdf->Output($tmp.'/POG - '.$i.'.pdf', 'F');
// ADD PDF FILE TO ZIP
$zip->addFile($tmp.'/POG - '.$i.'.pdf', 'POG - '.$i.'.pdf');
}
//After I loop ends, I close the zip file and force download
$zip->close();
header('Content-type: application/zip');
header('Content-Disposition: attachment; filename="my-pdf.zip"');
readfile('my-pdf.zip');
?>
Файл zip загружается, но я не могу открыть его, потому что он поврежден. Что может быть причиной этой проблемы?