PHPでパスワード付きのZIP / PDFファイルを作成する方法
2024/01/12
PHPでZIPファイル化する方法やPDFファイル出力する方法を過去に書いたが、何らかの案件に実装する場合パスワード付きにしてほしいみたいな要望があるかもと思った。以下に対応方法のメモ。
TCPDFを用いる場合以下を記述する。
$tcpdf->SetProtection(array('print', 'copy', 'modify'), 'password');
引数の詳細はリファレンスを参照。
ZIP
<?php chdir('/var/www/html'); exec("zip -e --password=xxxxxxxx ./test.zip ./test.txt");
chdirで移動せずに「/var/www/html/test.zip /var/www/html/text.txt」みたいに指定すると「/var/www/html/」のディレクトリ構造のまま圧縮されてしまうので注意。また、上記が正常に動作しない場合はディレクトリのパーミッションを確認すること。
所感
今回のは個人情報等を取り扱うシステムなんかで割と使えそう。
関連記事
-
PHPでテンプレートPDFに動的に文字や数値を追記し出力する方法(TCPDF&FPDI)
請求書や領収書のテンプレートがあり、そちらに対して動的に文字・数値を追記し出力さ ...
-
TCPDF「Could not include font definition」エラーの対処方法
TCPDFでフォントを「arialunicid0」に指定したところ「TCPDF ...
-
mpdfで「The /e modifier is …」エラー発生時の対応方法
pdf関連のPHPライブラリ「mPDF」を使っているページがエラーログにのってお ...
-
PHPにてHTML / 画像ファイルをPDFファイル化する方法(mPDF)
PHPにてHTML / 画像ファイルをPDFファイル化したい。検索してみるもサー ...
-
HTML / CSSで作成したコンテンツをPDFファイルで出力する方法(TCPDF)
HTML / CSSで作成したコンテンツをPDFファイルで出力させたい。以前mp ...