何をしようとしてた?
phpspreadsheetを触ってみたかった。WindowsのXAMPP環境に、composerをインストールし、composerからphpspreadsheetをインストールしようとしていた遭遇したエラー
Problem1
- phpoffice/phpspreadsheet 1.28.0 requires ext-gd * -> it is
missing from your system. Install or enable PHP's gd extension.
your system. Install or enable PHP's gd extension.
Cannot use phpoffice/phpspreadsheet's latest version 1.28.0 as
it requires ext-zip * which is missing from your platform.
In PackageDiscoveryTrait.php line 317:
Package phpoffice/phpspreadsheet has requirements incompatible with
your PHP version, PHP extensions and Composer
version:
- phpoffice/phpspreadsheet 1.28.0 requires ext-zip * but it is not present.
Cloning failed using an ssh key for authentication, enter
your GitHub credentials to access private
When working with _public_ GitHub repositories only, head to
https://github.com/settings/tokens/new?scopes=&description
=Composer+on+自分のPCのユーザー名+2023-04-12+0644 to retrieve a token.
This token will have read-only permission for public information only.
When you need to access _private_ GitHub repositories as well, go to
https://github.com/settings/tokens/new?scopes=repo&description
=Composer+on+自分のPCのユーザー名+2023-04-12+0644
Note that such tokens have broad read/write permissions on your behalf,
even if not needed by Composer.
Tokens will be stored in plain text in "C:/Users/m230528/AppData/Roaming/
Composer/auth.json" for future use by Composer.
For additional information, check https://getcomposer.org/doc/articles/
authentication-for-private-packages.md#github-oauth
Token (hidden):
エラーの意味
- "phpoffice/phpspreadsheet 1.28.0 requires ext-gd * -> it is
missing from your system."
⇒ モジュールgdがないから、phpspreadsheetインスト無理よ - "Cannot use phpoffice/phpspreadsheet's latest version 1.28.0 as it requires ext-zip * which is missing from your platform." ⇒ モジュールzipがないから、phpspreadsheetインスト無理よ
- "This token will have read-only permission for public information only.
When you need to access _private_ GitHub repositories as well, go to
https://github.com/settings/tokens/new?scopes=repo&description
=Composer+on+自分のPCのユーザー名+2023-04-12+0644"
⇒ Gitのあんたのリポジトリ、読み取り権限しかないから、phpspreadsheetインスト無理よ - "For additional information, check https://getcomposer.org/doc/articles/
authentication-for-private-packages.md#github-oauth
Token (hidden):"
⇒ Gitのあんたのリポジトリ、トークンの有効期限が切れてるから、新しいトークン手に入れて入力しないと、phpspreadsheetインストさせないわよ
できないできない言うなぁ(怒)
なんやTokenて。突然話しかけてくんなぁ(焦)
composerに、phpspreadsheetをインストールするには?
- 1. Windowsにcomposerを手動でインストール
- 2. XAMPPのPHPのPATHが通ってるか確認
- 3. composerのディレクトリcomposer.jsonを作成
- 4. composer.jsonのパスを、システム環境変数に追加
- 5. composerのパスが通ってるか、確認
- 6. XAMPPのphpフォルダにある、php.iniで"コメントアウトになってる行2か所"を削除
- 7. XAMPPのhtdocsフォルダで、コマンド"composer install"を入力 ⇒ これでインストール成功♪
PHPspreadsheetの公式にも、composer.jsonを作らないと追加モジュールのインストールはできないよ、と書いてある
⇒ 公式読んでも理解できなかったワシ
3から解説するぜ
3. 作成するcomposer.jsonの中身
{
"require": {
"phpoffice/phpspreadsheet": "^1.28.0"
}
}
4. システム環境変数に追加する、composer.jsonのパス
1. C/ProgramData/ComposerSetup/bin/composer.json
composer -vでcomposerと表示されたら、パスが通ってる
6. XAMPPのphpフォルダにある、php.iniで"コメントアウトになってる行2か所"を削除
extension=gd
extension=zip
これでcomposer installしたら、成功した♪
モジュールを追加で入れるって、メンドクセー
Gitのトークンの更新や読み取り権限の設定は、Gitにログインしたら自然にできた。
助けてもらったサイトさま