WEBサイト内で見積書やカタログを作っているときにPDF出力しなきゃいけない場面がありました。
そんな場面のおぼえがきです。
TCPDFのライブラリをダウンロードします
https://github.com/tecnickcom/tcpdf
<?php
// ライブラリの読み込み
require_once('./TCPDF/tcpdf.php'); //tcpdfのパス
// TCPDFインスタンスを作成
$orientation = 'P'; // 用紙の向き
$title = 'お弁当一覧';
$unit = 'mm'; // 単位
$left = 5; // 余白
$top = 5; // 余白
$right = -1; // 余白
$format = 'A4'; // 用紙フォーマット
$unicode = true; // ドキュメントテキストがUnicodeの場合にTRUEとする
$encoding = 'UTF-8'; // 文字コード
$diskcache = false; // ディスクキャッシュを使うかどうか
$tcpdf = new TCPDF($orientation, $unit, $format, $unicode, $encoding, $diskcache);
$tcpdf->setPrintheader(false); //ページヘッダーなし
$tcpdf->setPrintFooter(false); //ページフッターなし
$tcpdf->AddPage();
$tcpdf->SetFont("kozgopromedium", "", 10);
$tcpdf->setMargins($left ,$top ,$right);
$tcpdf->setTitle($title);
$html = <<< EOF
<style>
table {
background-color:#FFFFFF;
padding:10px;
}
th {
background-color:#FFFFFF;
text-align:center;
}
tr {
background-color:#FFFFFF;
}
td {
background-color:#FFFFFF;
}
</style>
<table>
<tr class="client_List">
<td class="id">{$val['bentoId']}</td>
<td class="bentoName">唐揚げ弁当</td>
<td class="bentoPrice">1300円</td>
</tr>
</table>
EOF;
$tcpdf->writeHTML($html);
$tcpdf->Output("user.pdf", "I");
// ブラウザにそのまま表示
header('Content-Type: application/pdf');
header("Content-Disposition: inline; filename*=UTF-8''".rawurlencode($fileName));
echo $pdfData;
?>
各オプションの説明は別記事で