はじめに
phpのバージョンを7.2に変えたところ今まで使っていたPHPExcelが使えなくなっていたので、これを機会にPhpSpreadsheetへの移行を行いました。
PhpSpreadsheetの公式に移行手順が載っていたので参考にしながら行いました。
# 環境
OS : AmazonLinux2
php : 7.2.8
ちなみにDockerで行いました。
環境構築についてはこちらで
インストール
$ composer require phpoffice/phpspreadsheet
私はcomposer.jsonに記述してインストールしました。
"phpoffice/phpspreadsheet": "*"
バージョンがわからなかったのでとりあえず*
、結果としてバージョンは1.3.1
が入っていました。
はまったところ
PhpSpreadsheetの公式を見ながらプログラムを変更していき、実行したところziparchive not found
のエラーが出ました。 PhpSpreadsheetの他記事などでは結構簡単そうに行っていたのですが、まさかのエラー。
とりあえずググって見たら、どうやらphp-zip
をインストールすればいいようです。
Dockerで環境構築したのでDockerfileに記述しました。
RUN yum install -y \
php72 \
php72-php \
php72-php-devel \
php72-php-mbstring \
php72-php-opcache \
php72-php-soap \
php72-php-mysqlnd \
php72-php-pear \
php72-php-zip ← こいつ
自分はyum install -y php72-php-zip
で入れましたがphp-zip
はphpのバージョンやAmazon Linuxのリポジトリなどで変わってくるので各自で調べてください。
ちなみに後で気づいたのですがPhpSpreadsheetの公式に書いてありました。