HAPPY HACKING Oouchi's BLOG

PSE(ポンコツエンジニア)の技術ブログ

【PHP】Mac + composerでの「the requested PHP extension zip is missing from your system.」エラー対処法

f:id:ooooouchi:20210116232253p:plain:w400

結論

PHPを再インストールする

概要

composerを使ってlaravel/installerphpoffice/phpspreadsheetをインストールする際に発生しがちな

Problem 1
 - phpoffice/phpspreadsheet 1.2.1 requires ext-zip * -> the requested PHP extension zip is missing from your system.
 - phpoffice/phpspreadsheet 1.2.0 requires ext-zip * -> the requested PHP extension zip is missing from your system.
 - Installation request for phpoffice/phpspreadsheet ^1.2 -> satisfiable by phpoffice/phpspreadsheet[1.2.0, 1.2.1].

こういったエラー文。

phpコマンドのzip拡張機能が見つからないといったエラーなんですが、
PHPのバージョンを確認しても結構新しめだしなあ・・・と思ったりして結構悩みます。

原因

MacにはPHPが予めインストールされています。
しかし、Mac OS 10.15 Catalina以降のOSでインストールされているPHPは機能が縮小されているためzip拡張機能が含まれていません。
そのため、拡張機能をインストールするかPHPを再インストールする必要があります。

対処法

拡張機能を新しくインストールする方法はやり方が少し複雑なので、今回はPHPを再インストールすることで対応します。

参考リンク:【初心者用】Homebrewを使って、PHPをインストール

もう一度

composer install

で正常にインストールできました!

おわりに

なぜプリインストールされているPHPの機能が縮小されているのかはわかりませんが、新しくMacを買った際はPHPを再インストールすることを忘れないようにしなければいけませんね。

それでは、最後までお読みいただきありがとうございました。
少しでもお役に立てたら嬉しいです。