  | 
                       | 
          
            
               
                 ตอนหลังผมไปถูกใจ tcpdf ในโหมดของ EOD 
หลักการคือใส่ทุกอย่าง ตั้งแต่ html  css php ให้อยู่ใน EOD  
เวลามัน gen เป็น pdf มันตอบโจทย์มากจริง ๆ  
 
ตย.อาจจะยาวหน่อย อันนี้เขียนใน CI  
เสียดายตัวงานจริง HDD server พังเลย พังพินาศ  ฐานข้อมูลเกลี้ยง T^T 
 $this->load->library('Tcpdfx');
class MYPDF extends TCPDF {
    public $datafromdb;//<-- to save your data
    function __construct( $datafromdb , $orientation, $unit, $format )
    {
        parent::__construct( $orientation, $unit, $format, true, 'UTF-8', false);
        // echo $datafromdb;
        // print_r($datafromdb);
        // echo "<hr>";
        $this->datafromdb = $datafromdb->teacherName;
        //...
    }
    public function Header() {
        // print_r($datafromdb);
        // $image_file = 'http://council.buu.ac.th/image/LogoBuuThai.jpg';
        $image_file = K_PATH_IMAGES.'buu.png';
        $this->Image($image_file, 'C', 5, 25, '', 'PNG', false, 'C', false, 300, 'C', false, false, 0, false, false, false);
        $this->SetFont('thsarabun', 'B', 18);
        $this->Ln(33);
        $this->Cell(0, 10, 'รายชื่อนิสิตที่ '.$this->datafromdb.' เป็นอาจารย์ที่ปรึกษาหลักควบคุมวิทยานิพันธ์', 0, false, 'C', 0, '', 0, false, 'M', 'M');
    }
}
$pdf = new MYPDF($get_teacher_name,PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true,
 'UTF-8', false);
$pdf->SetCreator(PDF_CREATOR);
$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE, PDF_HEADER_STRING);
$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
// $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
$pdf->SetMargins(15, 45, 10, true);
$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
$pdf->SetFont('thsarabun', '', 14, '', true);
$pdf->AddPage('L', 'A4');
$tbl = <<<EOD
<style>
td{
        border:1px solid #CCC;
}
</style>
                    <table cellspacing="0" cellpadding="1" border="0" style="width:950px;">
                        <thead>
                          <tr>
                            <td align="center" bgcolor="#F2F2F2" width="30">#</td>
                            <td align="center" bgcolor="#F2F2F2" width="180">ชื่อ-นามสกุล</td>
                            <td align="center" bgcolor="#F2F2F2" width="370">ภาษาไทย</td>
                            <td align="center" bgcolor="#F2F2F2" width="370">ภาษาอังกฤษ</td>
                          </tr>
                        </thead>
                        <tbody>
EOD;
foreach ($get_store as $key => $value) {
  $num = $key+1;
  $name = $value->arrTitle[0]->titleName.$value->arrNisitName[0]->nisitName;
  if (empty($value->arrThesisName)) {
    $thai = '-';
    $eng = '-';
  }else{
    $thai = $value->arrThesisName[0]->thesisNameThai;
    $eng = $value->arrThesisName[0]->thesisNameEng;
  }
$tbl .= <<<EOD
<tr>
    <td align="center" width="30">$num</td>
    <td align="left" width="180"> $name</td>
    <td align="left" width="370"> $thai</td>
    <td align="left" width="370"> $eng</td>
</tr>
EOD;
if($num==6){
$tbl .= <<<EOD
</tbody></table>
EOD;
$pdf->writeHTML($tbl, true, false, false, false, '');
$pdf->lastPage();
$pdf->AddPage('L', 'A4');
$tbl = <<<EOD
<style>
td{
        border:1px solid #CCC;
}
</style>
EOD;
$tbl .= <<<EOD
                    <table cellspacing="0" cellpadding="1" border="1" style="width:950px;">
                        <thead>
                          <tr>
                            <td align="center" bgcolor="#F2F2F2" width="30">#</td>
                            <td align="center" bgcolor="#F2F2F2" width="180">ชื่อ-นามสกุล</td>
                            <td align="center" bgcolor="#F2F2F2" width="370">ภาษาไทย</td>
                            <td align="center" bgcolor="#F2F2F2" width="370">ภาษาอังกฤษ</td>
                          </tr>
                        </thead>
                        <tbody>
EOD;
}
// 
}
$tbl .= <<<EOD
</tbody></table>
EOD;
$pdf->writeHTML($tbl, true, false, false, false, '');
  $pdf->Output('example_001.pdf', 'I');
                        
               
               | 
             
            
              
			                              
                              
              
                
                     | 
                     | 
                     | 
                 
                
                     | 
                  
                      
                        | Date :
                            2019-01-31 08:25:42 | 
                        By :
                            apisitp | 
                         
                    | 
                     | 
                 
                
                     | 
                     | 
                     | 
                 
                | 
             
           
			         | 
             |