淘宝天猫VIP

阿里国内站VIP

阿里国际站VIP

京东平台VIP

疯狂插件VIP

全站通VIP

当前位置: 首页 经验分享/新闻资讯 经验分享/常见问题解答

PHP安装图片处理拓展Imagick安装教程,IIS,Apache通用

收藏 邀请

这个方法IIS,Apache都通用,而且我们是测试过的,希望能帮助有需要的人,让你学会PHP安装图片处理拓展Imagick的安装

疯狂小编在最近的PHP项目中,需要用到切图和缩图的效果,在本地windows开发环境,安装过程遇到好多问题,在此与大家分享。

php官网里,一大群老外也看不懂这玩意怎么装,主要原因在于,php版本庞杂,还有x86 x64 nts ts,对应的imagick版本也不一定相同,imagick第一道关还算容易,总还是有办法装上,imagick对应的ImageMagick程序又不一定了,又出现庞杂的版本,即使官网给出的依赖版本也没有效果,同时也没有官方任何地方给出一个合理的安装方法,真是变态。从中文到英文,从php文档到百度、谷歌资料,各种版本,全是坑!

使用环境

 

安装步骤

根据环境下载合适的 imagick扩展 和 imagemagick程序

1.下载拓展

下载地址一: http://windows.php.net/downloads/pecl/releases/imagick/
下载地址二: https://pecl.php.net/package/imagick
要点: 注意对应php版本 ts还是nts x86还是x64
这里以phpinfo()为准

所以我应该下载imagick 3.4.3版本 PHP5.6  Non Thread Safe (NTS) x86 的拓展——php_imagick-3.4.3-5.6-nts-vc11-x86.zip

2. 安装拓展

  1. 解压上述文件后,将php_imagick.dll复制到php/ext目录,或者其他你的存放拓展的目录
  2. 修改php.ini 加上extension=php_imagick.dll,注意php可能有多个ini,以phpinfo为准
  3. 此时复制解压上述文件目录中其他dll到php目录,重启apache,此时phpinfo显示拓展安装成功,但是 ImageMagick number of supported formats为0,到这里成功安装了一半

3 下载imagemagick程序

下载地址:http://windows.php.net/downloads/pecl/deps/
imagemagick还有官网下载,此处不鼓励从imagemagick官方下载,他们的网站上我并没有找到历史版本下载,安装失败的几率很大
下载与phpinfo提示一致的版本,此时需要注意  1.软件版本对应     2.vc11还是vc14 3.x86还是x64 都要以phpinfo为准,我的

所以我下载 ImageMagick-6.9.3-7

然后用phpinfo()查看,死活出不来imagick扩展支持,自己摸索了老半天,查了很多资料,发现光按照大部分网上说的方法,百分百成功不了!因为有几个重点没说清楚!

首先是装完ImageMagick,一定要配置环境变量,PATH当中安装的时候可以勾选装上,另外还要添加一个

IMAGICK_HOME=C:\ImageMagick\modules\coders,这里可以根据自己的安装目录自行调整

然后就是解压imagick扩展包的时候,有一堆其余的dll文件,要复制到C:\Windows\System32里,如果是64位的复制到C:\Windows\SysWOW64里

然后cmd里运行下php -v,看看有没有报错,如果有报错的,看看是不是漏装了VC库,成功的话,重启下IIS,再运行phpinfo()看看,正常的话,就可以看到imagick加载成功了,如果看到supported formats是no value的话,看下环境变量是否添加了,之前这个问题卡了我好久

4 安装imagemagick程序

  1. 下载的文件解压后,将程序整体复制到无空格 无中文字符的目录中 E:\Program Files (x86)\
  2. 配置环境变量,在“此电脑”右键“属性”,以此点击“高级” “环境变量” ,在 “系统变量”中找到键为path的数据,双击path,选择“新建”,将刚刚放程序的目录“E:\Program Files (x86)\ImageMagick\bin”填入即可
  3. 将“E:\Program Files (x86)\ImageMagick\bin”目录中的所有的以“.DLL‘为后缀的文件放入php的根目录,应该有145个

 

重启计算机

测试

$im = new imagick( 'a.jpg' );

// resize by 200 width and keep the ratio

$im->thumbnailImage( 200, 0);

// write to disk

$im->writeImage( 'a_thumbnail.jpg' );

?>

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

阅读排行榜

关注官方微信

开放QQ群

美工5群:1061710658

美工3群:199**044(满

极限词群:951970623

平台简介

六年疯狂 初心不变:从2013年至今我们一直在研究和探索电商设计师所面临的难题最佳解决方案,我们致力打造一款更好用,更实用电商设计师辅助工具,疯狂六年只为做好一件事,以开放共享共赢的心态,更好的服务于广大电商设计师。
by:疯狂的美工电商设计师学习交流平台

手机版- 疯狂的美工 |网站地图

赣公网安备 36070202000375号

Powered by Fkdmg.Com © 2013-2021    赣ICP备18006944号-1