ImageMagick支持的格式没有任何价值

我已经安装下载并从链接http://imagemagick.org/script/binary-releases.php#windows安装ImageMagick-6.8.3-7-Q16-x86-dll.exe ,我正在使用Windows 7和PHP 5.3 0.8。

在安装时,它正确地安装在我的机器上, convert命令完美地工作。 在我的转换configuration什么显示在这里 :

在这里输入图像说明

但在我的phpinfo部分,我得到:

ImageMagick支持的格式没有价值

我得到了像这样的所有图像magick值https://www.evernote.com/shard/s297/sh/12397c86-d016-4ca4-9415-fd541daeca39/2fc504bf5ddba5693efd3249402b2b5c

我不知道为什么它没有价值我已经安装了相同的ImageMagick-6.8.3-7-Q16-x86-dll.exe在我的32位windows7机器上的PHP 5.3.8。 php_imagick.dll我从其他网站downloded。 我不知道什么是我在安装imagemaagick的问题,如果是php_imagick.dll版本的问题可以任何人build议这个configuration适当的php_imagick版本?

Solutions Collecting From Web of "ImageMagick支持的格式没有任何价值"

并非所有版本的ImageMagick都可以与所有版本的php_imagick.dll配合使用。 Imagick扩展v3.4。*结合ImageMagick 7. *不支持任何图像格式。 当我降级到ImageMagick 6.9。*问题解决了。

在phpinfo的回声中,您可以看到需要哪个版本的ImageMagick。 搜索“使用ImageMagick库版本的Imagick”和“使用ImageMagick版本编译的Imagick”(应该相同)。

二进制下载列表: https : //www.imagemagick.org/download/binaries/

或更旧的版本: http : //windows.php.net/downloads/pecl/deps/

在Windows上安装ImageMagick的逐步说明: https : //stackoverflow.com/a/28872879/2366136

我花了好几天的时间寻找一个解决方案,并最终用Sysinternals procmon找到了它。

我发现apache在文件夹c:\ windows \ system和/ bin中寻找像IM_MOD_xxxx.dll这样的dll文件。 将文件复制到其中一个文件夹对我来说是个诀窍。

祝你好运。

自从在谷歌的第一个结果寻找解决这个问题时,我会添加一个为我工作。 资料来源: http : //forums.zend.com/viewtopic.php?t=2397#p15226

我遇到了PHP 5.6的问题,它认识到扩展,但没有支持的格式。 http://windows.php.net/downloads/pecl/releases/imagick/3.1.2/

从imagemagickDir / modules / coders / *和imagemagickDir / modules / filters / *复制DLL文件到imagemagick根帮助,现在imagemagick从调用PHP时正常工作。

不要忘记给IIS访问imagemagick文件夹。

编辑:

当IIS成功识别格式时,我遇到了兼容性问题。

为PHP 5.6工作组合:

http://windows.php.net/downloads/pecl/releases/imagick/3.2.0b2/
http://ftp.icm.edu.pl/packages/ImageMagick/binaries/ImageMagick-6.8.8-9-Q16-x86-dll.exe

检查一下

MAGICK_HOME = C:\ Program Files(x86)\ ImageMagick-6.8.8-Q16 \ modules \ coders

被设置。

这里有很多的答案,因为这个程序和PHP的景观已经随着时间而改变。

我现在非常习惯使用PHP 7.1。 起初,我是像所有的指令一样复制DLL的。 幸运的是,所有必要的是最新的PECL包和相应版本的Imagick为您的系统,这是棘手的部分。 如果您想使用PHP扩展,则不能使用最新的Imagick(在撰写本文时是第7版),直到扩展升级。 您必须在您的系统上安装与PHP扩展版本匹配的Imagick版本。

正如其他人所指示的,为您的PHP版本下载imagick的最新PECL包 。 由于我使用的是PHP 7.1的线程安全x64版本,因此我需要3.4.3RC1包,这是目前我唯一的一个具有DLL版本的PHP版本。

在这些文件中,我只需要复制php_imagick.dll 接下来,转到http://windows.php.net/downloads/pecl/deps/并下载最新的Imagick for你的系统,这可能是VC14的一个在这一点上,这似乎只是一个问题在您的系统上安装相应的C ++ Redistributable软件包以使其工作。 简单地解压缩文件,并将bin添加到路径中。 同样,如果你有一个更新版本的Imagick,你会想用这个替换它,因为这是一个将使用PHP扩展。

在这一点上,你应该能够重新启动Apache,并确认在phpinfo中启用了imagick扩展。 它应该显示你的PHP扩展Imagick的版本。 同样,如果路径中的系统上的Imagick是与PHP扩展所显示内容相匹配的版本,那么您应该看到从系统上的版本6 Imagick获得的支持格式列表。 您不需要将它们复制到apache bin或其他任何地方,也不需要创建一个MAGICK_HOME文件夹。