GAEでWordPressを構築する時、上記エラーが出て多少ハマったので対応した内容を書いてみました。
- macOS:Catalina(10.15.4)
- shell:zsh
PHPスクリプトを実行すると「Fatal error: Uncaught Error: Class ‘ZipArchive’ not found」というエラーが発生。
調べてみたところ、
- 必要なPHP拡張機能が入っていない
- PHPが最新ではない可能性がある
という事だったので、不足ツールのインストール並びPHPを最新化しました。
Command Line Toolsの最新化
通常はターミナルで下記コマンドの実行だけでいいようです。
xcode-select --install
ただ、私の環境では次のエラーが表示されました。
xcode-select: error: command line tools are already installed, use “Software Update” to install updates
手動でアップデートするしかないようです。
こちらの手順を参考にさせて頂きました。
※最新リリース版のCommand_Line_Tools_for_XcodeでOKです。
※私はCommand_Line_Tools_for_Xcode_11.4.1.dmgをダウンロードしインストールしました。
/usr/local/sbinの対応(mac OS固有)
恐らくmac OS HighSierraあたりからだと思いますが、セキュリティ上の理由で/usr/local/sbinディレクトリが存在しなくなっています。
phpのインストール前に、/usr/local/sbinの対応をしておく必要があります。
sudo mkdir -p /usr/local/sbin sudo chown -R $(whoami):admin /usr/local/sbin
最新のPHPをインストール
最新のPHPをインストールするとZipArchiveも一緒に自動インストールしてくれるようです。
Homebrewでインストールしました。
ターミナルでの実行コマンドは下記の通りです。
brew update brew install php@7.3 brew link php@7.3 --force
次にパスを通します。
zshでは次の通りになります。
※シェルによってパスの通し方は若干異なりますので、お使いのシェルに応じて適宜内容を変更して下さい。
echo 'export PATH="/usr/local/opt/php@7.3/bin:$PATH"' >> ~/.zshrc echo 'export PATH="/usr/local/opt/php@7.3/sbin:$PATH"' >> ~/.zshrc
ターミナルを閉じ再度起動後、
php -v
を実行し、phpが最新バージョンとなっている事を確認します。
以上で作業は終わりです。