PHP で帳票出力

PHPでお金をかけずにPDF出力する方法の覚書 によると、

PHPからPDFを出力する方法は大まかに分けて3種類ある。

  1. 文字とか画像を座標を指定してページ上にコツコツ配置していく方法
  2. テンプレートとなるwordやpdfファイルの文字列や画像を置換する方法
  3. pdf以外のフォーマット(htmlなど)で出力したものをpdfに変換する方法

とのこと。
1番目は論外。2番目の方法を一生懸命調べていたが、なかなかいい方法が見つからず、3番目の mPDF を使って HTML から PDF に変換するのが簡単なようだ。

http://blog.syuhari.jp/archives/1992
を参考に、Yahoo!Japan のトップをPDF化。

<?php
include "./mpdf50/mpdf.php";

$html = file_get_contents("http://www.yahoo.co.jp/");
$mpdf = new mPDF('ja', 'A4');
$mpdf->WriteHTML($html);
$mpdf->Output();

なるほど、これなら URL を渡すと PDF を出力する Web サービスが簡単に作れるね。

mPDF は、ちょうど新しいバージョン(5.0)がリリースされたばかり。もう少し調査が必要かも。