PHPでPDFを扱うときの注意点

PDFを扱うときの構文

$output_filename = "表示させる時のファイル名称";
$output_file = "表示させたいファイル";

header('Content-type:  apprication/pdf');
header('Content-Disposition: inline; filename="'.$output_filename.'"');
header('Content-Length:' filesize($output_file));
readfile($output_file);

解説

・Content-type→扱いたいファイルの種類で変更させる。拡張子ごとに合わせた指定名があるよ。
参考ファイル:Content-Typeの一覧

・Content-Disposition: inline→ダウンロードさせるならattachment、ブラウザで表示させるならinline。

 

注意

相対パス使って

扱いたいファイルをURLを含む形での読み込むとエラーが発生します。

○→./../xxx/yyy/zzz.pdf
×→https:xxx/yyy/zzz.pdf

すみませんが、理由はわかりません。

文字の出力はしないで

header();の前にechoやvar_dump()などの出力はしないで下さい。

ファイルの出力の前に文字の出力があると、ファイル内に余計な文字が入っていたり、ファイルの読み込みに失敗します。

Twitterでフォローしよう

おすすめの記事