在Mac OS X中使用PHP模块安装ImageMagick Brew

Wou*_*cny 27 php macos imagemagick imagick

我已经安装了ImageMagick brew install imagemagick.这一切都很好,我可以从终端/命令行运行任何ImageMagick命令.

现在当我尝试在PHP中使用ImageMagick类时,我收到一个错误Class 'Imagick' not found in ....我想这是因为没有加载ImageMagick模块.

任何人都可以帮我把这个东西用PHP工作吗?谢谢!

附加信息:
Mac OS X版本: 10.8:Mountain Lion
PHP版本:5.3.13

小智 46

经过大量的实验,我才这样做了.现在,这似乎是为php 5.3做的方法:

brew tap josegonzalez/php
brew tap homebrew/dupes
brew install php53-imagick
Run Code Online (Sandbox Code Playgroud)

不知道何塞·冈萨雷斯是谁,但显然我们欠他的债......

  • 谢谢,这对我有用.我还必须在/etc/php.ini中手动添加[imagick] extension ="/ usr/local/Cellar/php53-imagick/3.1.0RC2/imagick.so". (3认同)
  • [他的名字是Jose Gonzalez,他不仅仅是一个代码猴,他是我们中的一员!](http://www.youtube.com/watch?v=GCi_PIz5ekU) (2认同)

Kur*_*fle 32

您的ImageMagick安装还不够.您还需要Imagick包(可能php72-imagick用于家庭酿造或类似).

Imagick本身不做这项工作,它是一个原生的PHP扩展,用于使用ImageMagick API创建和修改图像.

尝试通过搜索包的确切名称brew search imagick.

  • @WouterKonecny:尝试`brew search imagick`来找到包装的确切名称. (9认同)
  • 使用`pecl install imagick`为图像magick安装PHP模块 (3认同)
  • 向下滚动到 [here](/sf/answers/3525549681/) 以获得合适的答案,因为 home-brew 上不再存在 `php72`。 (2认同)

Mr.*_* 14 19

我正在使用约塞米蒂.对我来说,解决方案是这里已经列出的答案和评论的组合.

brew install imagemagick
brew install php55-imagick
Run Code Online (Sandbox Code Playgroud)

编辑/etc/php.ini以包含imagick

extension=/usr/local/Cellar/php55-imagick/{version of php55-imagick}/imagick.so
Run Code Online (Sandbox Code Playgroud)

例:

extension = /usr/local/Cellar/php55-imagick/3.1.2_1/imagick.so
Run Code Online (Sandbox Code Playgroud)


小智 16

我遇到过同样的问题.如果您使用的是PHP 5.6,这些步骤对我有用

  1. brew install php56-imagick
  2. brew install imagemagick
  3. find /usr/local/Cellar -name "imagick.so"
    将此命令输出中的路径复制到php.ini文件中,
    例如extension=/usr/local/Cellar/php56-imagick/3.3.0_2/imagick.so 保存文件.现在仔细检查imagemagick类是否存在类型
  4. php -r "print(class_exists('imagick'));"

Brew符号链接对我没有用,所以我必须将完整的路径名放到php.ini文件中才能使它工作.希望这可以帮助


小智 12

php72-imagick现在已被弃用,因为imagick是php二进制文件本身的一部分.使用pecl安装imagick例如:

brew install php
brew install imagemagick
brew install pkg-config
pecl install imagick
Run Code Online (Sandbox Code Playgroud)

  • 如果在“ pecl install imagick”之后遇到“找不到pkg-config”错误,请键入“ brew install pckg-config”,然后重试 (4认同)
  • @Erwan我认为该命令中有错别字-似乎该命令中不应有`c`。对我有用的是`brew install pkg-config` (2认同)

Rez*_*aei 6

这个为我工作:

brew install imagemagick       # If it's not already installed
mkdir /usr/local/lib/php/pecl  # On my system this dir didn't exist and this caused pecl install to fail
pecl install imagick
Run Code Online (Sandbox Code Playgroud)

这里