Wkhtmltopdfがインストールされている前提。
CakePHPから利用するにあたってKnpLabs/snappyをcomposerでインストール。
コンポーネント化しておく。
Configure::read(‘command.wkhtmltopdf’); はwkhtmltopdfのパスを指定。
コントローラー
HTMLの生成はCakePHPで行い、出力されたHTMLをコンポーネント経由で渡しPDFとして出力する。
Wkhtmltopdfがインストールされている前提。
CakePHPから利用するにあたってKnpLabs/snappyをcomposerでインストール。
コンポーネント化しておく。
Configure::read(‘command.wkhtmltopdf’); はwkhtmltopdfのパスを指定。
コントローラー
HTMLの生成はCakePHPで行い、出力されたHTMLをコンポーネント経由で渡しPDFとして出力する。
EC2を想定しています。
依存パッケージのインストール、日本語フォントインストール
$ sudo yum install xorg-x11-fonts-75dpi.noarch $ sudo yum install ipa-gothic-fonts.noarch ipa-mincho-fonts.noarch |
ダウンロードしてrpmをインストール
$ wget http://download.gna.org/wkhtmltopdf/0.12/0.12.2.1/wkhtmltox-0.12.2.1_linux-centos6-amd64.rpm $ sudo yum install wkhtmltox-0.12.2.1_linux-centos6-amd64.rpm |
disable-smart-shrinking を指定することで自動調整されなくなる。
セキュリティサポートは延長され2年程続くが、アクティブサポートは終了している。
PHPのリリース日とサポート期限
余程の変態コーディングをしていなければ、大事にはならない模様。
一部削除された関数があるので要チェック。
ereg()、split()は削除されたがmb_ereg()、mb_split()は残っていたりする為。
また、エラーレベルが変わった関係でAjaxレスポンスにエラーメッセージが混入して、Jsonパースエラーみたいな例があったり。
自前のコードはどうにでも出来るがComposer経由でインストールしているライブラリのが面倒。
(PHP7に対応しているバージョンがあればそちらを指定)
AmazonのMWSライブラリの一部が軒並みダメ。
PHP Fatal error: Redefinition of parameter $quotaMax in FBAInboundServiceMWS\Model\ResponseHeaderMetadata.php on line 31
引数名の重複を修正。
システムのソースに混ぜるのは嫌だったので、GitHubに修正版を登録。ライセンスで再配布を許可しているため、同じような目的でforkされているのが散見される。
Composerからのインストール後で入れ替えが効くようZIPから展開させている。
公式の期限では後2年となり、移行期間として十分だろう。
7.1からパフォーマンスが上がっているのも嬉しい。
IDEなどを利用して、日頃から@deprecatedに気を配れば移行の負担も軽減される。