【问题标题】:Imagick is not installed没有安装 imagick
【发布时间】:2014-01-15 01:42:15
【问题描述】:

我目前正在使用 UniServerz,尝试安装 ImageMagick 和 IMagick,因此我可以尝试在 php 上调整图像大小,因为我读到 GD 不太好,不再受支持。我有一个查看How to install Imagick/imagemagick on windows 7 并按照其中的内容进行操作。

具体来说,我通过 dll.exe 安装了 ImageMagick,并将 php_imagick.dll 复制到 extensions 文件夹中,然后在 php.ini 文件中添加 extension=php_imagick.dll。文件夹的权限也已检查,并且它们都设置为完全控制。

但是,当我尝试执行代码时

<?php

if(extension_loaded('imagick')) {
    echo 'Imagick Loaded';
}
else
{
    echo "Not loaded";
}
?>

我一直在屏幕上显示“未加载”,我不知道我还需要做什么来安装 imagick 以便我可以在 php 上使用 ImageMagick。

不胜感激。

【问题讨论】:

  • phpinfo 是否向您显示有关 ImageMagick 的信息?如果有多个,您是否确保使用正确的 php.ini? (检查 phpinfo 输出中的 php.ini 路径)。您的 error_log 中是否有任何消息?
  • phpinfo 中唯一与 imagick 相关的内容显示 "--with-imagick=shared" ,apache 错误日志中没有错误消息。为了以防万一,我还编辑了 php.ini 文件(全部)。

标签: php image image-processing imagemagick imagick


【解决方案1】:

我知道这是一个老问题,但我也遇到了这个问题。需要部署的不仅仅是一个 php_imagick.dll。您需要部署所有以 CORE_RL 或 IM_MOD_RL 开头的 DLL 文件,并将它们保存到 PHP 根目录(您有 php.exe 的位置)或 PATH 变量中的目录。一旦我这样做了,它就像一个魅力。

请参阅此参考: https://mlocati.github.io/articles/php-windows-imagick.html

【讨论】:

    【解决方案2】:

    除了我在 cmets 中已经提到的观点之外,您是否已经查看了有关特定 windows dll 问题的 php 手册?

    常见问题是 DLL 的位置、php.ini 中“extension_dir”设置的值以及编译时设置不匹配

    如果问题在于编译时设置不匹配,您可能没有下载正确的 DLL。尝试使用正确的设置再次下载扩展程序。同样, phpinfo() 可以提供很大帮助。

    来源: http://www.php.net/manual/de/install.pecl.windows.php#install.pecl.windows.problemsolving

    【讨论】: