3
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

posted at

updated at

xamppにImageMagickを導入してPHPで使いたい(MSVC15)

XAMPPにImageMagickを導入したいと思います。
前提とし、XAMPPをダウンロードしてインストールしているものとします。

【目的】
ちょっとした画像処理の検証で手軽に使いたい。

【手順】
1.XAMPPのバージョンを確認。
2.(1.)に適合するImageMagickをダウンロードする。
3.ダウンロードしたファイルを解凍し、内容物をXAMPPフォルダーへコピーする。
4.PHPの設定ファイルを書き換えます。
5.Windowsの環境変数にpathを設定する。(PC再起動)

ImageMagickをダウンロードしてきます。

注意したいのは、XAMPPのバージョンと合わせることです。
・XAMPPの32bit/64bitに合わせる。
・コンパイラーバージョンを合わせる。
 -> phpinfo()で確認してみましょう。

XAMPPでApacheを起動しましょう。

-> Compiler MSVC15 (Visual C++ 2017)と書いてあります。

image.png

ImageMagickをダウンロードしましょう。
https://windows.php.net/downloads/pecl/releases/imagick/

image.png

image.png

※おや?VC15が無い。と思ったら下記にありました。

https://windows.php.net/downloads/pecl/deps/
image.png

『 ImageMagick-7.0.7-11-vc15-** 』(**を自分の環境に合わせましょう。)

ダウンロードしたら、解凍しましょう。

image.png

解凍したフォルダーの内容は下記のようになっています。
image.png

 XAMPPのフォルダーにファイルを配置して設定ファイルを書き換えます。

※パスは環境により読み替えてください。
まず、『C:\xampp』配下に『ImageMagick』という名称のフォルダーを作成します。
その中に、解凍した内容物のbinフォルダの中身を全部コピーしてください。
(binフォルダーはいりません。中身だけです。)

こんな感じです。

image.png

次に、『システム環境変数』にImageMagickへPathを設定します。

image.png

右下の「環境変数」をクリック。
image.png

下段「システム環境変数」の「Path」を選択して、「編集」ボタンを押下。

image.png

「新規作成」ボタンを押すと入力できるようになるので、PATHを入力します。
PATHは『C:\xampp\ImageMagick』です。

image.png

image.png

「OK」を押下して設定を完了します。

環境変数を設定しましたので、面倒ですがいったん再起動しましょう。
※下記の作業が終わってからでも構いませんが、一応。

~~再起動~~
はい、つぎに、ImageMagickのPHPラッパーのimagicをダウンロードしてXAMPPに入れています。

image.png

インストールする環境がPHP Version 7.2.4 なので、
『php_imagick-3.4.3-7.2-ts-vc15-x86.zip』をダウンロードして解凍します。

image.png

・『php_imagick.dll』を『C:\xampp\php\ext\』へコピーします。
・『C:\xampp\ImageMagick』をファイル名『CORE_RL*』をすべてコピーします。
  この時、上書きの警告が出る場合も気にせず上書きします。
・『C:\xampp\php\php.ini』の『Dynamic Extensions』項目に下記のように
 『extension=php_imagick.dll』を追加します。

image.png

XAMPPを再起動しましょう。
下記のように組み込まれていることが確認できたら完了です。

image.png

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
3
Help us understand the problem. What are the problem?