MacをCatalinaにアップグレードしてからローカルのPHPで以下のエラーが出てしまう。
Class 'ZipArchive' not found in ...
PhpSpreadsheetを使ってExcelのデータをAPI経由で各システムに登録するツールをMacのローカルで動かしていたんだけど、Catalinaにアップグレードしてからこのエラーで全く動かず。
まずPhpSpreadsheetは動作環境としてZipArchive classが必要だが、アップグレード後はインストールされていない。
色々ググったけど、いまいち見つからなかった。
で、対応方法は簡単だった。
足りないツールとPHPを最新にすること。
コンソールを立ち上げて、
足りないツールを以下のコマンドでインストールする。
Class 'ZipArchive' not found in ...
PhpSpreadsheetを使ってExcelのデータをAPI経由で各システムに登録するツールをMacのローカルで動かしていたんだけど、Catalinaにアップグレードしてからこのエラーで全く動かず。
まずPhpSpreadsheetは動作環境としてZipArchive classが必要だが、アップグレード後はインストールされていない。
色々ググったけど、いまいち見つからなかった。
で、対応方法は簡単だった。
足りないツールとPHPを最新にすること。
コンソールを立ち上げて、
足りないツールを以下のコマンドでインストールする。
xcode-select --install
次に、最新のPHPをインストールするとZipArchiveも一緒に自動インストールされる。
更新前のPHPは7.3.8でこの記事を書いてるときは7.3.10が最新。(2019/10/18時点)
brew update
brew install php@7.3
brew link php@7.3
最後に、コンソールを一度閉じて再度起動して完了。
一応、
php -vでバージョンが上がっていることを確認する。
php -v
PHP 7.3.10 (cli) (built: Sep 30 2019 19:59:57) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.10, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.3.10, Copyright (c) 1999-2018, by Zend Technologies
あーよかった。
しかし最新のMac OSであるCatalinaは不具合が多い。
Sidecarはいいんだけど、メモや写真がiPhoneともうまく同期されなくなったり、Mac mini だとHDMIからディスプレイが表示されなくなったりと。
コメント