在 codeigniter 中使用 html2pdf 批量生成 pdf

bulk pdf generation with html2pdf in codeigniter

我在 codeigniter.I 中使用 HTML2PDF 库,我正在尝试使用它生成批量 pdf。

其中我面临的问题是每个 pdf 中都有相同的内容或 pdf 没有 content.I 已经完成了我的 homework.Yeah 但总是显示完美生成的第一个 pdf(帐户:3 )

按照我的说法,下面的代码肯定有问题:

    ob_start();
    require_once($template_config.'template.php'); // 
    $content = ob_get_contents();
    ob_clean();

问题:它第一次工作但第二次它刷新内容变量的所有内容并且由于重复的 PDF 或没有内容 PDF 生成。

我试过如下

1) 在 generatetemplate.php 中创建对象并传递给 common.php

2) 尝试使用 include_once //在每个 pdf 中获得相同的内容,如果我正在做 echo 然后显示第二个和第三个 pdf 没有内容

File structure : 
   application
      controllers
          generatetemplate.php
      libraries
          common.php
          html2pdf
              html2pdf.php
      template.php


common.php :

function print_content($customerdata){
    $this->load->library('/html2pdf/html2pdf');
    $template_config=$this->config->item('template');
    ob_start();
    require_once($template_config.'template.php'); // 
    $content = ob_get_contents();
    ob_clean();
    $content = str_replace("<CUSTOMER_ADDRESS>",$CUSTOMER_ADDRESS,$content);
    $this->CI->html2pdf->pdf->SetDisplayMode('fullpage');
    $this->CI->html2pdf->writeHTML($content);
    $this->CI->html2pdf->Output($download_path,"F");
 }

generatetemplate.php
     function __construct() {
       parent::__construct();
       $this->load->library("common");
       $this->load->library('html2pdf');
     }
     function get_customer_data(){
       $this->db->order_by("id","DESC");
       $this->db->where('id IN (1,2,3)');
       $query = $this->db->get("customers")->result_array();
       foreach($query as $key=>$accountdata){
         $this->common->print_content($accountdata);
       }
     }

任何帮助和想法将不胜感激。

我已经尝试了以下代码及其对我的工作。

Common.php

function print_content($customerdata){
    $this->load->library('/html2pdf/html2pdf');
    $template_config=$this->config->item('template');
    ob_start();
    require_once($template_config.'template.php'); // 
    $content = ob_get_contents();
    ob_clean();
    $content = str_replace("<CUSTOMER_ADDRESS>",$CUSTOMER_ADDRESS,$content);
    $this->CI->html2pdf = new HTML2PDF('P','A4','en'); // Just added this line and its work for me.
    $this->CI->html2pdf->pdf->SetDisplayMode('fullpage');
    $this->CI->html2pdf->writeHTML($content);
    $this->CI->html2pdf->Output($download_path,"F");
 }