【PHP】PHPでExcelを操作することができる『PhpSpreadsheet』のインストール手順メモ【composer】
私は普段XAMPPの開発環境でPHPを使用しています。今回PHPで処理したデータをエクセル(XLXS)形式で出力したいと思うことがあり、色々と調べてみたらPHP標準の機能(関数)ではCSVで出力はできてもXLXS形式では出力できないらしい。
XLXS形式で出力するためにはPHPでエクセルを操作できるようにするライブラリ、『PhpSpreadsheet』を導入する必要があるらしい。
ただこの『PhpSpreadsheet』、導入するのは私のような初心者にはちょっと難しかった。っというのも『PhpSpreadsheet』の導入はよくあるインストーラーでのインストールではなく、『composer』とソフトウェアを介しての導入となります。『composer』の操作は初心者が毛嫌いするであろうターミナル画面で行うため、ここで導入に手こずる可能性が高いようです。
例に漏れず私も『composer』を使用しての『PhpSpreadsheet』の導入に手こずった一人です。ってなわけで今回はExcelをPHPで操作できるようになる『PhpSpreadsheet』導入(インストール)に成功した手順をメモします。
目次
『PhpSpreadsheet』導入に必要な『composer』と流れを確認
冒頭でも少し触れたとおり、の導入には『composer』というソフトウェアが必要です。
そもそもこの『composer』とは一体何をするための物なのでしょうか?調べてみると…
『Composer は、PHP のプロジェクトが必要とするライブラリやパッケージを管理する「ライブラリ依存管理ツール」です。』
とのことです…。
なんのこっちゃ…(ぁ
例を挙げると、プロジェクトには A というパッケージが必要な場合、 A を利用するためには B というライブラリが必要だとします。 手作業でライブラリを収集する場合は、このような依存関係を自分で調べて解決しないといけないところを、Composer では利用するパッケージとして A を宣言すれば、自動的に B も含めてパッケージをインストールしてくれるとの…
う~ん、なんか便利そう!(小並感
としか実感が湧かないのが自分の知識不足と経験不足を物語っているね。まあそれはさておき、今回目標とする『PhpSpreadsheet』にもこの『composer』は必須と言えるものらしい。難しいことはよく分からないけど『composer』ってのをインストールして、それを使って『PhpSpreadsheet』をインストールという流れでOK!
『composer』をインストール
では早速『composer』をインストールしていきましょう。
公式サイト:https://getcomposer.org/
に飛んでダウンロードページに移動します。
赤枠で囲んであるところからインストーラーをダウンロードします。
インストーラーを起動します。この画面は何もせずに『Next』でOK
私は『XAMPP』を使用しているので『XAMPP』内の『php』フォルダ内の『php.exe』にインストール場所をセットします。チェックボックスにもチェックを入れて『Next』を押します。
プロキシに関しては特に何もしなくてもよいみたいです(よく分かってない
『Install』を押します。
『Next』を押してインストール完了です。
『composer』がインストールされているかどうか確認
念のため『composer』が正常にインストールされており、使用できる状態かどうか確認しましょう。『composer』の操作はコマンドプロンプトで行います。
コマンドプロンプトを起動して下記のコードを打ち込みます。
|
1 |
composer -V |

コマンドを打って画像のように『composer』と『PHP』のバージョンが表示されれば正常に『composer』が使用できる状態だと思います。ただ今回導入しようとしている『PhpSpreadsheet』はPHP8.0以上に対応しているということなのでもしもバージョンが低いのであればPHPのバージョンを上げなければいけないようです。
コマンドで『composer』をインストールしたフォルダへ移動する
|
1 |
pushd c:\xampp\php |
『pushd』コマンドで先程『composer』をインストールした『php』フォルダへ移動します。ここはお使いの環境によって変えなければいけないかもしれませんね。
『composer』で『PhpSpreadsheet』をインストールする(失敗)
コマンドプロンプト上で下記のコードを打ち込みます。色んな記事でもこのコマンドでインストールできると書いてあるのです!いざインストール!
|
1 |
composer require phpoffice/phpspreadsheet |
なんかエラーでたぁΣ(゚ω゚ノ)ノ
いやまあ実はこれよくあるというか、ぶっちゃけると以前『composer』を使用した時もこんな感じでエラーが出て挫折したことがあったりしました。大体ここで躓くことがあるようです。ですが今回は諦めませんぞ。このエラーを乗り越え、絶対に『PhpSpreadsheet』を導入してやる(`・ω・´)
『php.ini』内の『extension=gd』を有効にする
先程のエラーをちょっと覗いてみます。
|
1 |
Cannot use phpoffice/phpspreadsheet's latest version 2.1.0 as it requires ext-gd * which is missing from your platform. |
このエラー内容が表示されたときは『php.ini』内の『extension=gd』を有効にすることで解決することができます。

XAMPPを使用しているならば『XAMPP』→『php』フォルダ内に『php.ini』があるはずなのでテキストエディタで開きます。
925行目の『;extension=gd』のセミコロンを外して『extension=gd』とすることで『extension=gd』が有効になります。
保存してもう一度『PhpSpreadsheet』のインストールをしてみましょう。
『composer』で『PhpSpreadsheet』をインストールする(再チャレンジ)
もう一度下記のコードをコマンドプロンプトで打ち込んでみましょう。
|
1 |
composer require phpoffice/phpspreadsheet |
このような画面になれば『PhpSpreadsheet』のインストールが無事成功したことを意味します。これでPHPでExcelを使用する準備ができたぞー!( `ー´)ノ
まとめ
今回は『PHP』でExcelを使用できるようにする『PhpSpreadsheet』の導入手順をメモしてました。いやはや『composer』とかライブラリとか、本当難しいですね”(-“”-)”
こういうエラーで何時間も時間がとられるのはとてもつらいので、可能な限りスムーズにインストールできるようになりたいものです。









