PHP安装imagick扩展踩过的坑

作者: 网管小贾 | 来源:发表于2019-12-25 11:57 被阅读0次

    微信公众号:网管小贾
    个人博客:www.sysadm.cc

    环境背景:WAMP(PHP7.1.9 + Apache2.4.27)

    最近需要使用到图形添加水印等操作,于是找到了 Intervention Image 这个组件。

    大神的轮子拿来用,还真是方便!啧啧!

    出于好奇,发现配置文件 image.php 中,除了 gd 库外,还可以使用 imagick

    哎,这个东东平时不太留意啊!听说效率比 gd 要高很多。嗯,盘它!

    自此开启入坑之路......

    /* 1 */

    老一套,网上一顿猛搜索,找到了我当前环境所匹配的扩展包。

    解压扩展包中的 php_imagick.dll 到php环境的ext目录中。

    图1 查看扩展包所需环境 图2 选择DLL 图3 找到相应的扩展包

    /* 2 */

    轻车熟路,修改配置文件 php.ini ,开启加载 php_imagick.dll 扩展。

    一切都是那么的简单,不是吗?

    OK,重启服务加载扩展......

    纳尼!没有成功?

    使用测试命令 php --ri imagick 试试,还是失败。

    打开phpinfo页面,居然没有找到imagck扩展。(失败了当然找不到了)


    图4 找不到指定的模块

    微信公众号:网管小贾
    个人博客:www.sysadm.cc

    /* 3 */

    我经历过的坑,总结如下,少走弯路:

    1、到ImageMagick官网下载相应版本的安装程序。

    安装过后仍然失败,其实告诉你,根本不需要安装官网的程序。

    2、按网上指导新建一个环境变量 MAGICK_HOME ,同样没有用。

    3、在安装了官网的程序后,phpinfo中会出现imagick扩展项目。

    先别高兴得太早,怎么 ImageMagick number of supported formats 一项居然是 0

    网上的文章居然不明就里,说过段时间后再使用又好了。

    说是apache下显示为0,换nginx就是正常的。(我不信!事实证明我是对的。)

    4、扩展包中的 CORE_xx.dll 的所有文件复制到php目录下,

    还有说复制到apache的bin下的,均告失败。

    /* 4 */

    好了,折腾得也够累了,给出最终答案吧。

    其实很简单,只需两步即可。(php.ini开启扩展别忘记)

    第一步,把扩展包中根目录下的所有dll文件解压到php的ext扩展目录中。

    第二步,在系统变量Path中添加php的ext扩展目录路径。


    图5 在环境变量Path中添加PHP扩展路径

    打完收功!就这么简单!给出最终抓图。


    图6 Php_imagick扩展命令行测试 图7 Php_imagick扩展phpinfo加载成功

    结语:生命在于折腾,但也要少折腾!希望能帮到爱学习的小伙伴们!
    公众号:网管小贾

    微信公众号:网管小贾
    个人博客:www.sysadm.cc

    相关文章

      网友评论

        本文标题:PHP安装imagick扩展踩过的坑

        本文链接:https://www.haomeiwen.com/subject/bcccoctx.html