PhpSpreadsheetインストール方法とエラー解決方法|【最後にたどり着いた】

PHP

今回はPhpSpreadsheetインストール方法とエラー解決方法を解説します。

簡単に自己紹介ですが私は会社員15年程経験した後PHPを使い沢山の効率化を図ってきました。そんな私が実際の経験より発信する情報は有益な情報になると思います。

この記事の対象者

PhpSpreadsheetのインストール方法とエラーが出た場合の解決方法

では、早速ですが今回は以下の状況が前提で記事を書きます。

  • WindowsでXAMPPがインストールされている
  • Composerがインストールされている

上記の状態で、以下のコマンドでPhpSpreadsheetのインストールを行います。
※作業ディレクトリに居る状態で実施して下さい。

composer require phpoffice/phpspreadsheet

すると以下のエラーが出ました。

Cannot use phpoffice/phpspreadsheet’s latest version 2.2.2 as it requires ext-gd * which is missing from your platform.

上記のエラーを解決するためには
・XAMPPのインストールフォルダにあるPHP設定ファイル php.ini を開き、php.iniファイル内で次の行を検索します。

;extension=gd

上記の行が見つかったら、行頭のセミコロン (;) を削除して、GDライブラリを有効化します。
その後、必ずXAMPPのApacheを再起動して下さい。

XAMPPのApacheを再起動出来たらComposerで再度インストールします。

composer require phpoffice/phpspreadsheet

GDライブラリが正常にインストールされたかは以下のPHPコードを実行して下さい。

<?php
if (extension_loaded('gd')) {
    echo "GDライブラリが有効です。";
} else {
    echo "GDライブラリが有効ではありません。";
}
?>

これで、ext-gd のエラーが解消されるはずです。

ここで問題発生。。。
次は以下のエラーが出ました。

Cannot use phpoffice/phpspreadsheet’s latest version 2.2.2 as it requires ext-zip * which is missing from your platform.

次はphp.iniでZip拡張を有効化します。
php.iniファイル内で次の行を検索します。

;extension=zip

上記の行が見つかったら、行頭のセミコロン (;) を削除して、Zip拡張を有効化します。

次にlibzip.dllの確認をします。
ext-zipを使用するためには、libzip.dllが必要です。XAMPPのPHPには通常、このDLLファイルが含まれていますが、万が一ファイルが欠けている場合はXAMPPを再インストールするか、公式サイトからDLLを取得する必要があります。

以下のフォルダにlibzip.dllが存在することを確認します。

C:\xampp\php\ext

存在していればXAMPPのApacheを再起動して下さい。
存在していなければXAMPPの再インストールを実施して下さい。
その際、必要なファイルは必ずバックアップしてからお願いします。

Zip拡張が有効かどうかを確認するために、以下のスクリプトを使用してPHPでZip拡張が有効か確認できます。

<?php
if (extension_loaded('zip')) {
    echo "Zip拡張が有効です。";
} else {
    echo "Zip拡張が有効ではありません。";
}
?>

ここまでで問題が無ければ最後にComposerで再度インストールを実施して下さい。

composer require phpoffice/phpspreadsheet

私はこれで無事にインストール出来ました。

タイトルとURLをコピーしました