Open5

PHP関連メモ

山根 佑太山根 佑太

PHPのバージョン管理(Ubuntu)

  1. リポジトリ追加
    sudo add-apt-repository ppa:ondrej/php
  2. sudo apt update
  3. インストールしたいバージョンのPHPを導入
    sudo apt install -y php8.1
  4. バージョン切り替え
    sudo update-alternatives --config php
山根 佑太山根 佑太

composerを使う場合、バージョン切り替え後、curlとzipのモジュールは入れておいたほうが良い。
sudo apt install -y php8.1-curl php8.1-zip

山根 佑太山根 佑太

PDFを扱うライブラリのファイルサイズ(vendor以下)及びライセンス状況

mPDF

ファイルサイズ: 100MB

ライブラリ バージョン ライセンス
mpdf/mpdf v6.1.3 GPL-2.0
setasign/fpdi 1.6.2 MIT

Dompdf

ファイルサイズ: 9.58MB

ライブラリ バージョン ライセンス
dompdf/dompdf v2.0.7 LGPL-2.1
masterminds/html5 2.9.0 MIT
phenx/php-font-lib 0.5.6 LGPL-2.1-or-later
phenx/php-svg-lib 0.5.4 LGPL-3.0-or-later
sabberworm/php-css-parser v8.5.1 MIT

LGPL3.0のライブラリが含まれているが、LGPL2.1でライセンスされている理由 ⇒ https://github.com/dompdf/dompdf/issues/2231

FPDF

ファイルサイズ: 9.06MB

ライブラリ バージョン ライセンス
fpdf/fpdf 1.86.0 MIT

TCPDF

ファイルサイズ: 27.4MB

ライブラリ バージョン ライセンス
tecnickcom/tcpdf 6.7.4 LGPL-3.0-or-later

Html2Pdf

ファイルサイズ: 31.2MB

ライブラリ バージョン ライセンス
spipu/html2pdf v4.6.1 LGPL
tecnickcom/tcpdf 6.2.26 LGPL-3.0

各ライブラリの比較

https://apitemplate.io/blog/how-to-generate-pdf-documents-using-php/#elementor-toc__heading-anchor-6