2

我已经上网几天了,但是我还没有找到解决我的问题的方法。所以我在这里,问我的第一个 stackoverflow 问题:我需要将 imagick 安装到我的 UwAmp 本地服务器。我当前的 imagemagick 版本:ImageMagick-6.8.9-1-vc9-x86 我有 Windows 7 x64,但 ImageMagick 的 x64 版本都没有让我的本地服务器运行 imagick。在命令行中,ImageMagick 工作正常。

我的 PHP 版本:5.4.31

该扩展名列在 UwAmp 扩展列表中,但是当我运行 PHPinfo 时,没有一个关于 imagick 的词。我的 Apache 错误日志没有打印任何与加载问题相关的错误。

当我运行测试文件时,它会打印出:Fatal error: Class 'imagick' not found。我已经为各种版本的 PHP、x64 wamp 服务器、x86 等尝试了一堆 php_imagick.dll 文件。我找到的解决方案并没有解决它。分步教程也没有。

到目前为止,您是否遇到过这个问题?你会推荐我尝试什么 php_imagick.dll 文件?

谢谢你的帮助,迈克尔

编辑:我的 UwAmp 版本是 32 位

4

1 回答 1

2

像我这样的新手的详细指南。花了很长时间才让它工作。

我最初关注的是:http: //php.net/manual/en/imagick.installation.php

但是安装后,imagick下的PHPInfo显示支持的格式数=0

所以我遵循了这些步骤,从各种来源中获取信息以使其正常工作。

  1. 单击 PHPInfo 并检查:

    架构 = x86 或 x64

    线程安全 = 是或否

  2. 从以下位置下载 ImageMagick:

    http://windows.php.net/downloads/pecl/deps/

    就我而言,我下载了:ImageMagick-6.9.3-7-vc11-x86.zip

    因为 PHPInfo 下的 Architecture 是 x86

    至于vc11或vc14

    在谷歌搜索“visual c++ 11 runtime”或“visual c++ 14 runtime”并安装

  3. 解压缩并将所有 dll 从 bin 子文件夹复制到 Apache bin 目录。它是一堆 CORE_RL_ .dll 和 IM_MOD_RL_ .dll 以及一些其他 dll。

    就我而言,我在 C:\UwAmp 中安装了 UwAmp,因此:

    (来自 zip)bin/*.dll --> C:\UwAmp\bin\apache\bin

  4. 去:

    http://pecl.php.net/package/imagick

    截至今天,最新的是 3.4.1 所以我去了: http: //pecl.php.net/package/imagick/3.4.1/windows

    我的 PHP 版本是:5.6.18,第 1 步的线程安全是 Yes,所以我下载了:

    5.6 线程安全 (TS) x86

    并得到:php_imagick-3.4.1-5.6-ts-vc11-x86.zip

  5. 解压并复制“php_imagick.dll”到php扩展文件夹:

    就我而言:php_imagick.dll --> C:\UwAmp\bin\php\php-5.6.18\ext

    注意:这个 ZIP 还包含 dll,其他指南说要提取到 apache 的扩展文件夹。无需这样做。步骤#3 已经处理好了。

  6. 编辑“php.ini”并添加:

    扩展=php_imagick.dll

    或(我把它放在最后):

    [想象]

    扩展=php_imagick.dll

    对于超级新手:点击 UwAmp UI 中的编辑按钮,“php_uwamp.ini”将打开并编辑它。重新启动 UwAmp 时,它将被复制到正确的 php.ini。起初我遇到了麻烦,因为有几个 php*.ini 分散在各处。

  7. 重启阿帕奇

  8. 检查 PHPInfo 滚动到部分(或查找):imagick
    支持格式的数量:234(在我的)

    如果没有“imagick”部分或“支持的格式”为 0,则出现问题。

希望这可以帮助。

顺便说一句,“Gras Double”对问题的评论有效,只是希望我早点找到它。

于 2016-03-30T18:03:58.593 回答