windows版xampp(php7.2.x)にimagemagickをインストールする方法

ネットにはいろいろ情報が書かれているが、その通りにやっても、バージョン違いだと上手く行くまで結構苦労します。

今回、php7.2のxamppに、imagemagickとimagickが上手くインストール出来たので、その手順をまとめました。

フォルダ名は各自の環境に置き換えて読んで下さい。

xampp環境

  • windows版xampp3.2.2
  • phpバージョンはphp7.2.2をphp7.2.3にアップグレード済
  • CompilerはMSVC15 (Visual C++ 2017)
  • Thread Safetyはenabled
  • Architectureはx86
  • xamppインストールフォルダはC:\xampp
  • phpインストールフォルダはC:\xampp\php72

phpインストールフォルダを変更する方法や、違うphpバージョンを切り換えて使う方法は別記事にします。

ImageMagick本体をダウンロード・インストール

ImageMagick本体をダウンロード

windows.php.net – /downloads/pecl/deps/

ImageMagickはこちらのページからダウンロードできます。

今回は、xampp環境に合わせてvc15とx86が付いたバージョンを選びます。

現在は、
「ImageMagick-7.0.7-11-vc15-x86.zip」
が最新版だったので、ダウンロードします。

ImageMagick本体をインストール

インストールといっても、zipを解凍するだけ。

zipを解凍した中で、binフォルダの中身を全部
「C:\xampp\ImageMagick72」というフォルダを作って保存します。

binフォルダ以外は使いません。

システム環境変数でImageMagickへPathを通す

windows10での操作方法を書きます。

1、ウインドウズのマークのスタートボタンを左クリックして出たメニューにある、歯車マークをクリックします。
(または右クリックして出たメニューから設定をクリックします)
システム環境変数の設定

2、検索窓に漢字で「環境」と打ち込むと「システム環境変数の設定」が予測で出てきますので、クリックします。

3、現れた「システムのプロパティ」の詳細設定タブを開き、下にある「環境変数」というボタンをクリックします。
システム環境変数の設定

4、システム環境変数のPathという項目を選択して、編集ボタンを押し、参照ボタンを押します。
「C:\xampp\ImageMagick72」を選択してOKボタンを決定します。

5、システム環境変数が設定するためにPCを再起動します。

Visual C++ 2013 Redistributable Packageは不要

If you have any problems, you likely need vcomp120.dll. To install it, download Visual C++ 2013 Redistributable Package.

Visual C++ Redistributable Packages for Visual Studio 2013
Download Visual C++ Redistributable Packages for Visual Studio 2013 from Official Microsoft Download Center
このvcomp120.dllが必要という情報もあるが、windows10ではインストールしなくてもよかった。

imagick本体をダウンロード・インストール

imagick本体をダウンロード

次に、ImageMagickのphpラッパーのimagickをインストールします。

windows.php.net – /downloads/pecl/releases/imagick/にはphp7.1までしか置いていないので、以下のsnapsのページからダウンロードします。

windows.php.net – /downloads/pecl/snaps/imagick/3.4.3/

Thread Safetyがenableはファイル名にts、disableはntsが付きます。

今回は、ts、vc15、x86が付いたバージョンということで、「php_imagick-3.4.3-7.2-ts-vc15-x86.zip」をダウンロードします。

imagick本体をインストール

これもzipを解凍するだけです。
php_imagick-3.4.3-7.2-ts-vc15-x86.zip

まず、zip中にある「php_imagick.dll」を
「C:\xampp\php72\ext」フォルダにコピー。
次に、「CORE_RL・・・・」という16個のファイルを
「C:\xampp\ImageMagick72」に上書きコピーします。

php.ini設定

php72フォルダのphp.iniを開き、「extension=」を検索。
「extension=」がたくさんある所に、
extension=php_imagick.dll
と追記する。
行頭に;が付くとコメント扱いになってしまうので、;は付けないように。

phpinfoでimagickが表示されない時

動かなかったので、試行錯誤しました。

原因は、php7.2を置いているphp72フォルダにあるphp.iniに、参照するextフォルダを指定し忘れたことでした。

php.iniに指定しない時には「xampp/php/ext」を読み込むという仕様。

そこで、extension_dirのコメントアウトを外して「extension_dir = “C:/xampp/php72/ext”」と無事に「xampp\php72\ext\php_imagick.dll」を読み込んでくれた。

(Visited 1,260 times, 1 visits today)