作成日: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して各ファイルを置換えして再度試した。