【Laravel】laravel-dompdfライブラリでPDFを出力するやり方を解説します

PHP

こんにちは。たいら(@tairaengineer2)です。
転職を繰り返し現在4社経験している、10年目エンジニアです。

この記事では、 LaravelPDFを出力する基本のやり方を解説していきます。

前提条件:実行環境について

実行環境は以下の通りです。

OS Windows10
PHPのバージョン 8.0.3
Laravelのバージョン 8.42.1

この記事では

C:\Laravel\LaravelSample

配下にLaravelのプロジェクトを作成しています。

PDFを出力するためにlaravel-dompdfというライブラリを使います。
インストールするやり方は、以下の記事をご参考ください。

PDFを出力するやり方を解説

PDF出力を実装するためには

  • コントローラー作成と実装
  • ルーティング(api.phpまたはweb.php)を設定
  • PDF用のビュー

の3つが必要です。
PDFを出力するやり方をサンプルプログラムをまじえて解説します。

コントローラー作成と実装

コントローラー作成と実装の解説をします。

コントローラーを作成するためのコマンドは

です。
詳しくはこちらの記事をご参考ください。

以下がPDFサンプルコントローラープログラムです。

このサンプルコントローラーでは、URLにアクセスしたと同時にPDFがダウンロードされるようにしています。

上からPDF関連をピックアップして、解説していきます。

のuseはPDF関連の関数を使いたいので宣言しています。

はloadView関数はBladeビューをロードしてHTMLに変換する関数です。
Bladeビューの拡張子「.blade.php」を除いたビュー名を指定すれば、指定したビューがHTMLに変換されます。

download関数はユーザーがPDFをダウンロードできるようにする関数です。
引数が指定されている場合、指定された値のPDFがダウンロードできます。

ルーティング(api.phpまたはweb.php)を設定

ルーティング(api.phpまたはweb.php)を設定を解説します。
この記事では「web.php」でルーティングします。
サンプルプログラムは以下です。

web.phpの概要については、こちらの記事をご参考ください。

PDF用のビュー

PDF用のビューはコントローラーで指定した通り、ファイル名を「pdf_sample.blade.php」とします。
サンプルプログラムは以下です。

ビューの新規作成するときに注意すべきポイントをまとめていますので、こちらご参考ください。

PDF出力を実行し確認する

PDF出力に必要な

  • コントローラー作成と実装
  • ルーティング(api.phpまたはweb.php)を設定
  • PDF用のビュー

の3つができたので、実行し確認します。

Laravelでサーバーを立ち上げるコマンドは

です。
サーバーを立ち上げるコマンドの詳細な説明は、こちらの記事をご参考ください。

  • http://〇〇〇.〇〇〇.〇〇〇.〇〇〇:8000/sample/
    ※コマンドプロンプトに記載されているURL
  • http://localhost:8000/sample/

どちらかのURLにアクセスすれば、download関数で指定したファイル名のPDFがダウンロードできます。

ダウンロードしたPDFを開いてみると、ビューの通りのPDFが出力できたことが確認できました。

まとめ:PDFを出力してみよう

以上がLaravelでPDFを出力するやり方の解説でした!

あなたのご参考になったのなら、とても嬉しいです(*´▽`*)
ではでは~(・ω・)ノシ

コメント

タイトルとURLをコピーしました