2017-09-28 91 views
0

早上好。我有個問題。我只是使用dompdf將多個輸出從html轉換爲pdf,然後我想通過批量將多個輸出轉換爲zip文件。有沒有人可以告訴我如何做到這一點?注:對不起,我的英語不好使多個文件轉換dompdf html到pdf到zip

這是我的散裝

function bulk() { 

    $action = $this->input->post('action'); 
    if ($action == "export") { 
     $export = $this->input->post('msg'); 

     for ($i=0; $i < count($export) ; $i++) { 

     $this->load->library('Pdfgenerator'); 
     $users = $this->model_csv->getDatabyDescription($export[$i]); 
     $desc = $users['description']; 
     $name = substr((strrchr($desc, '-')), 2); 
     $html = $this->load->view('formulir_new2', $users, true); 
     $this->pdfgenerator->generate($html,"E-Tax" . time() . $name, $i); 
     } 


     // echo "<script type='text/javascript'>"; 
     // for($i=0;$i< count($export); $i++){ 
     //  $users = $this->model_csv->getDatabyDescription($export[$i]); 
     //  $desc = $users['description']; 
     //  $name = substr((strrchr($desc, '-')), 2); 
     //  // echo "window.open('/pdf/E-tax{time()}{$name}{$i}.pdf');" ; 
     //  echo "window.open('/pdf/E-Tax" . time() . $name . $i . ".pdf"; 
     // } 
     // echo "</script>"; 

    } 

這是我的PDF生成庫

public function generate($html, $filename, $i){ 

if($i == 0) 
{ 
    define('DOMPDF_ENABLE_AUTOLOAD', false); 
} 

require_once("./vendor/dompdf/dompdf/autoload.inc.php"); 
$file_to_save = $_SERVER['DOCUMENT_ROOT'] . '/exportdata/uploads/pdf/'; 
$dompdf = new dompdf(); 
$options = new Options(); 
$options->setIsRemoteEnabled(true); 
$dompdf->setOptions($options); 
$dompdf->set_paper(array(0,0, 612, 936), 'portrait'); 
$dompdf->load_html($html); 
$dompdf->render(); 
$abc = $dompdf->output(); 

file_put_contents($ file_to_save $文件名$ I 「PDF」,$。 ABC);}

+0

你的代碼中有什麼問題?請提一下,沒有人會在這裏爲您編寫代碼:P – Bira

回答

0

你可以使用ZipArchive

$zip = new ZipArchive(); 

$zipfile = "myArchive.zip"; 
$zip->open ($zipfile, ZipArchive::OVERWRITE); 

for($i = 0; $i < count ($document); $i ++) { 

    $fileinfo = pathinfo ($document [$i]); 

    if (file_exists ($document [$i])) { 

     $zip->addFile ($document [$i], "myFolder/" . $fileinfo ['filename'] . "." . $fileinfo ['extension']); 
    } 

} 

$zip->close(); 
+0

您好,非常感謝您的幫助,但您能否給我演示? –

+0

在我的示例中,文檔是一個數組,它包含您生成的所有pdf。所以你可以把'$ document = array($ file_to_save。$ filename)' – Max