PHPでPDFテンプレート(表のようなもの)を読み込み、そこに多次元配列のデータを当てはめたいです。
X座標は横に不規則に推移し、Y座標はページが変わる時以外は一定に推移します。
そういう場合のロジックはどのように考えたらいいのでしょうか?
自分で考えたこと:
if文で何個目のデータの時は X+=10;とする。
PHP
1$data = array( 2array("1","氏名","電話番号","00000000"), 3array("1","太郎","090000066666","00000000"), 4); 5 6 include(dirname(__FILE__).'tcpdf/tcpdf.php'); 7 include(dirname(__FILE__).'fpdi/fpdi.php'); 8 9 // AddPage 引数 10 $orientation = 'L'; 11 $format = 'A4'; 12 13 $pdf = new FPDI(); 14 $pdf->SetMargins(0,0,0); // 上左右マージンの設定 15 $pdf->SetCellPadding(0); // セルパディングの設定 16 $pdf->SetAutoPageBreak(false); // 自動改ページを無効 17 $pdf->setPrintHeader(false); // ページヘッダ無効 18 $pdf->setPrintFooter(false); // ページフッタ無効 19 20 $pdf->setSourceFile('test.pdf'); // テンプレートを読み込み 21 $template = $pdf->importPage(1); 22 $pdf->AddPage($orientation, $format); 23 $pdf->useTemplate($template, 0, 0); 24 $pdf->SetFont('kozgopromedium', '', 12); 25 26 // データを書き込む 27 $y = 93; 28 29 foreach($data as $i => $row){ 30 31 $x = 13; 32 33 foreach($row as $j => $col){ 34 35 $pdf->SetXY($x,$y); 36 $pdf->Cell(20,10, $row[$j], 0, 0, 'R', '', 2, false, 'C', ''); 37 38 } 39 40 $y += 10; 41 42 } 43 44 45 $pdf->Output('test.pdf','D');
回答1件
あなたの回答
tips
プレビュー