Xampp / PHP ImageMagickをインスト

作成日:2021-03-15, 更新日:2021-03-16

流れ

0.現状の確認
1.ImageMagickの設定
2.Xampp(PHP)のImageMagickの設定(php.ini)
3.確認

0.現状の確認

Xamppを起動して、phpinfoの確認

▼確認する項目
・Compiler
・Architecture
・PHPのバージョン

▼私の場合
・Compiler - Visual C++ 2017
・Architecture - x64
・PHP-7.4.10

・・・以前つかっていた環境だと・・・「MSVC15 (Visual C++ 2017)」となっていた。
今回は「Visual C++ 2017」となっているので前回と同じ「MSVC15」が関係あると思われる。
また、「x64」とあるので64bitで対応。

▼重要な値
・「MSVC15」の「VC15」
・「x64」
・「PHP-7.4.10」

1.ImageMagickの設定

DL

https://windows.php.net/downloads/pecl/deps/」からDL
→「ImageMagick-〇〇〇〇-vc〇〇-x〇〇.zip」

私の場合だと「VC15」「x64」なので、「ImageMagick-7.0.7-11-vc15-x64.zip」をDL

インスト

1.まず「C:\xampp」の下に「フォルダ: ImageMagick」を作成。
2.DLしたzipを解凍して「bin」フォルダの中のファイルを「C:\xampp\ImageMagick」の下に移動

▼「C:\xampp\ImageMagick」の下で「convert -version」を実行してバージョンの情報がでればOK

> cd C:\xampp\ImageMagick
> convert -version

環境変数にPATHを通す

「システム環境変数」の「Path」に追加
→「〇〇〇/xampp/ImageMagick/」みたいな感じ
※設定後、PC再起動を行ったほうが良いかもしれない

2.Xampp(PHP)のImageMagickの設定(php.ini)

DL

PECL :: Package :: imagick
※2021-03-15時点: 「3.4.4」が「stable」となっていたので、コレをDL

「DLL」というリンクをたどって自分の環境のzipをDL

私の場合だと「VC15」「x64」「PHP-7.4.10」なので「7.4 Thread Safe (TS) x64」をDL
→「php_imagick-3.4.4-7.4-ts-vc15-x64.zip」をDL

ファイルの移動1

DLしたzipの中にある「php_imagick.dll」を「C:\xampp\php\ext」に移動

ファイルの移動2

DLしたzipの中にある「CORE_RL~」を「C:\xampp\ImageMagick」に移動(上書き)

php.iniの設定

▼下記追加

extension=php_imagick.dll

※最後でも良いと思うが・・・「Dynamic Extensions」ってトコにという人がいたので、従う

3.確認

Apacheを起動(or 再起動)してphpinfoで確認。
※環境変数にPATHを通したときにPC再起動していない場合、PCを再起動したほうが良いかもしれない

エラー

最初、「php_imagick-3.4.4~」ではなく「php_imagick-3.4.3~」をDLした

▼XamppからApacheを起動するとエラーが出てくる

httpd.exe - エントリ ポイントが見つかりません
プロシージャ エントリ ポイント add_index_zval がダイナミック リンク ライブラリ C:\xampp\php\ext\php_imagick.dll から見つかりませんでした。

これは、XAMPPのバージョンとDLLのバージョンが異なるのが原因っぽい。
・・・ということで、調べなおして・・・「php_imagick-3.4.4~」をDLして各ファイルを置換えして再度試した。

関連項目

Xampp: ImageMagick導入