还有其他关于如何在Windows 7上安装Imagick的帖子,但到目前为止我没有帮助。 :(
(或许最近的版本出现了问题)
我已按照以下步骤安装:
下载并安装ImageMagick
http://www.imagemagick.org/download/binaries/ImageMagick-6.8.8-1-Q16-x86-dll.exe
下载php_imagick.dll并复制到扩展名dir(c:\ xampp \ php \ ext)
http://www.peewit.fr/imagick/php55/vc11/x86/ts/php_imagick.dll
编辑php.ini文件并添加新扩展名(c:\ xampp \ php \ php.ini)
延长= php_imagick.dll
保存ini文件并重启Apache(如有必要,重新启动Windows)
启动Apache并运行测试
当我启动Apache时,我会弹出一个显示:
的弹出框程序无法启动,因为您的计算机缺少php5.dll。尝试重新安装该程序以解决此问题。
然后直接在另一个之后:
PHP启动:无法加载动态库'C:\ xampp \ php \ ext \ php_imagick.dll' - 找不到指定的模块。
According to funtioneer我怀疑某种编译错误。
现在我有PHP版本5.5.6(xampp 1.8.3),编译器MSVC11与php_imagick.dll文件相同。
从源代码下载ImageMagick并以自己正确的方式编译它吗? (以前从未在Windows中编译过)
答案 0 :(得分:23)
我尝试从here下载ImageMagick-6.7.7-5-Q16-windows-dll,而不是使用最新版本。那个实际上与http://www.peewit.fr/imagick/的php_imagick.dll(Imagick for PHP 5.5.x)一起工作。
这不是最新版本但它有效。 (即使没有重新启动计算机)
答案 1 :(得分:10)
在尝试了几乎所有在互联网上发布的解决方案后,最终对我有用的是什么:
环境:
OS: Windows Server 2008 R2 (64bit)
IIS: 7.5
PHP: 5.5.11 (x86)
PHP.ini: VC11, x86
Download并安装ImageMagick
ImageMagick-6.8.9-1-Q16-x86-dll.exe
来自Anatol的Download相应的.zip建议来源(感谢Anatol!)
ImageMagick-6.8.9-1-vc11-x86:
提取到临时文件夹并复制Imagemagick安装(c:\imagemagick)
内的“bin”文件夹的内容,以便覆盖我的文件。
下载.dll
并将其放入php extensions文件夹中
(我用过这个)
Imagick for PHP 5.5.x非线程安全来自: http://www.peewit.fr/imagick/
使用以下命令将扩展名添加到php.ini:
extension=php_imagick.dll
保存php.ini并重新启动IIS
最后,Image Magick信息显示在phpinfo()中;调用
想到解决从3个不同位置下载文件所需的这个问题是不可思议的。
希望它有所帮助。
答案 2 :(得分:7)
这是我为了让它发挥作用所做的 注意:真正让我失望的步骤是没有真正解释的是php_imagick.dll版本应该与你的imagick安装相匹配
好的,我采取的步骤是 从下载php imagick dll http://windows.php.net/downloads/pecl/releases/imagick/3.1.2/(我使用过php_imagick-3.1.2-5.5-ts-vc11-x86.zip)
zip文件将包含许多dll记住这一点,我们将来可能需要它。 将php_imagick.dll解压缩到您的扩展文件夹
将它放在扩展文件夹
中在php.ini中添加 extension = php_imagick.dll
现在问题是我们需要找出php_imagick.dll的编译版本 打开命令提示符并输入php -e -v 我这样做的方式是使用您之前下载的zip,将其他DLL解压缩到您的php文件夹,可能会弹出一条错误消息,说明缺少dll的内容。因此,从之前的zip文件夹中将DLL解压缩到PHP文件夹中。 尝试再次运行php -e -v,它应该可以正常工作,没有错误消息。 如果是这样的话 重启apache。现在看看phpinfo()并转到imagick部分。它会说ImageMagick版本:我说ImageMagick 6.8.6-8,这是他们在他们的网站上的旧版本。问题是ImageMagick支持的格式数量:可能会说零。
转到here并下载匹配的版本并安装(安装时请确保选中添加到路径变量的复选框)
完成安装Stop apache后。从之前放入的php文件夹中删除DLLS,然后再次启动apache。校验 重新启动apache,它应该都可以工作。
答案 3 :(得分:3)
应该使用的ImageMagic分布来自http://windows.php.net/downloads/pecl/deps/。 ImageMagic二进制文件需要使用与PHP扩展名相同的CRT构建。
答案 4 :(得分:3)
请参阅installing-imagick-php-7,了解如何使用php 7.0 +在Windows上安装imagick php扩展程序。这是迄今为止我发现的唯一真正的解决方案。它非常详细。
答案 5 :(得分:2)
我使用php 7和IIS(Apache非常相似)工作ImageMagick: 想象版本。 3.4.3 强>
PHP 7 nts x86,Windows Server 2012 x64,IIS 8.5
1)安装VC ++ 2015 https://www.microsoft.com/en-US/download/details.aspx?id=48145
2)从https://pecl.php.net/package/imagick获取仅 php_imagick.dll
3)将它放入php / ext /文件夹并将extension=php_imagick.dll
添加到php.ini
<强>注意!强> 最低版本支持PHP&gt; = 5.4.0和ImageMagick&gt; = 6.5.3-10。
目前不支持ImageMagick 7.
看看phpinfo:
您必须安装ImageMagick 6.9.3-7 Q16 x86
4)安装ImageMagick 6.9.3-7 Q16 x86 dll
来自http://ftp.icm.edu.pl/packages/ImageMagick/binaries/
不要取消选中&#34;将变量添加到路径&#34;。
5)重启服务器
那就是
答案 6 :(得分:0)
按以下步骤操作。
php 5.5 32bit ts
+ apache 2.4
+ windows 10 64bit
+ Imagick 6.9.3-5
+ php_imagick.dll ts
检查你的系统位是什么。
从中选择php_imagick.dll
版本
http://windows.php.net/downloads/pecl/releases/imagick/
从php_imagick.dll
文件
.zip
如果您不知道如何选择。
在命令行窗口输入php -v
获取php版本
运行以下代码可以显示您安装了哪种PHP,thread safe
或non thread safe
。点击here可以为您提供帮助。
在Windows上:php -i|find "Thread"
在Linux上:php -i|grep Thread
或者您可以在网页上运行功能phpinfo()
并搜索"Thread"
。
您会看到Thread Safety enabled
或Thread Safety disabled
@embe已经写出了其他步骤。
答案 7 :(得分:0)
现在有些文档未提及:在您的环境中设置MAGICK_HOME值。 ImageMagick需要这个变量,因此它知道在哪里找到所有相关的编码器。
打开控制面板,然后搜索“PATH”。在结果中,选择“编辑系统环境变量”。选择“环境变量...”选项,然后添加一个新的“系统变量”(下面的列表)。如果您选择了不同的安装路径,请确保将C:\ img替换为您自己的路径。
变量:MAGICK_HOME
值:C:\ img \ modules \ coders
答案 8 :(得分:0)
解决了!
在遇到相同的问题并进行了谷歌搜索之后,我找到了适用于Windows的解决方案,而且似乎也适用于每个发行版。
在我的情况下,PHP安装在c:\ php,扩展目录位于c:\ php \ ext。
重新启动apache,然后完成。