zoukankan      html  css  js  c++  java
  • wamp环境下安装imagick扩展

    先上图,如下是安装成功后的phpinfo()界面:

    安装步骤:

    1、先确定安装版本,比如我的的php : php7.0.12  x86 ts

        那么就需要三方版本 要一致:imagick软件本身( 如x86 )、php本身( x86 ts (thread safe) )、php扩展php_imagick.dll (ts) 

    2、需要下载2个软件: imagick软件本身、php扩展php_imagick.dll扩展包:

      imagick软件本身:  http://imagemagick.org/script/binary-releases.php#windows

      因为最新版本的 php_imagick.dll (最新版本3.4.3  2017.02.01)
         只支持到  ImageMagick 6.9.3 
         所以,我更换为  ImageMagick 6.8.9-6 Q16 x86.exe (自行百度相关版本)

      php扩展php_imagick.dll扩展包http://pecl.php.net/package/imagick/

      我选择的是: PHP 7.0 :7.0 Thread Safe (TS) x86

    3、.安装imagick软件和配置

        安装imagick软件本身,一直下一步即可;(最后一步要勾选上添加环境变量,否则安装好之后要自己将安装目录添加到系统环境变量中去)

        安装php扩展插件:php_imagick.dll  ,同其他php dll插件一样。 
         ①从php扩展压缩包中将php_imagick.dll 拖到/php/ext 目录下,

         ②在php.ini开启插件 extension=php_imagick.dll ,

         ③从扩展压缩包中将多个  CORE_RL_*.dll 文件拖到 /php/ 目录下

    4、重启Apache,查看 phpinfo() 中是否有 Imagick 项,如果有说明安装成功。

    5、需要另外 新建一个系统环境变量名为MAGICK_HOME,值为E:你的imagick路径modulescoders, 这步主要用来定位imagemagick的module,很重要。( 否则支持的图片格式数量默认为0 ImageMagick number of supported formats:  => 0 )

      如果没有Imagick 项,请 使用 php扩展调试命令  来检查扩展中存在的问题, 并确保三方软件版本一致即可。

      php扩展  调试命令:

      在cmd运行:  php --ri imagick

      (1)如果报错是:“php_imagick.dll' - %1 不是有效的 Win32 应用程序” ,则说明版本不相符合。 需要检查   imagick软件本身( 如x86 )、php本身( x86 ts (thread safe) )、php扩展php_imagick.dll (ts) 三方版本 要一致。

      (2) 如果报错是:“php.exe - 系统错误 ,无法启动此程序因为计算机丢失CORE_RL_wand_.dll ” , 说明你没有将 php_imagick.zip 扩展包中的“CORE_*.dll” 这些dll文件 放到 你的php.exe同级目录下。只需要拷贝 CORE_*.dll 到php目录就可以解决了。

      (3) 如果php --ri imagick 显示的结果  ImageMagick number of supported formats:  => 0 支持的图片格式数量为0,请看第5步需要新建一个环境变量。

      (4)如果php代码执行调用时报错:“ NoDecodeDelegateForThisImageFormat ”,表明你的php_imagick.dll的版本 并不支持或并不匹配 ImageMagick软件版本,这时候 php --ri imagick 的结果也显示为: ImageMagick number of supported formats => 0 。需要更换ImageMagick软件版本。

    以上内容大部分参考http://www.cnblogs.com/wangqishu/p/5609950.html


    我的环境是wamp,参照以上步骤安装好之后发现,在cmd运行:  php --ri imagick中可以看到imagick扩展,但是在phpinfo()下看不到imagick扩展,首先想到是phpinfo()中加载的php.ini文件和cmd命令加载的php.ini文件不是同一个,在phpinfo中查看php.ini文件路径是下面这个(在apache/bin目录下),而cmd命令加载的是php目录下php.ini文件

    然后我将php目录下php.ini文件覆盖apacheapache2.4.9inphp.ini文件

    但是此操作还是不能在phpinfo看到imagick扩展

    最后一步,将php扩展压缩包里的 CORE 开头的 dll 文件要放到 Apache/bin 目录下

    总结:通常开发环境下,按照分割线上的步骤是能安装好imagick扩展的,但是wamp集成环境比较特殊,需要apache/bin目录中php.ini文件和php目录中php.ini文件一样,另外要将php扩展压缩包里的 CORE 开头的 dll 文件要放到 Apache/bin 目录下

  • 相关阅读:
    jquery 获取 input type radio checked的元素
    各种js验证规则
    centos7 vsftp xftp 解决无法显示远程文件夹,可登陆
    js浮点运算精度丢失的解决办法
    ThinkPHP 改装后的分页类
    亚马逊AWS开启之路
    上慕课从这里开始 (www-mooc.com)
    iptables httpd.conf详解
    微信带链接的文本消息推送
    IE8不支持响应式设计解决方法
  • 原文地址:https://www.cnblogs.com/dreamydeng/p/6806956.html
Copyright © 2011-2022 走看看