我已经使用brew install imagemagick
. 这一切都很好,我可以从终端/命令行运行任何 ImageMagick 命令。
现在,当我尝试在 PHP 中使用 ImageMagick 类时,出现错误Class 'Imagick' not found in ...
。我猜这是因为 ImageMagick 模块没有加载。
谁能帮我让这个东西在 PHP 中工作?谢谢!
附加信息:
Mac OS X 版本: 10.8:Mountain Lion
PHP 版本:5.3.13
我已经使用brew install imagemagick
. 这一切都很好,我可以从终端/命令行运行任何 ImageMagick 命令。
现在,当我尝试在 PHP 中使用 ImageMagick 类时,出现错误Class 'Imagick' not found in ...
。我猜这是因为 ImageMagick 模块没有加载。
谁能帮我让这个东西在 PHP 中工作?谢谢!
附加信息:
Mac OS X 版本: 10.8:Mountain Lion
PHP 版本:5.3.13
经过大量的实验后,我才做到了这一点。目前,这似乎是 php 5.3 的方法:
brew tap josegonzalez/php
brew tap homebrew/dupes
brew install php53-imagick
不知道何塞·冈萨雷斯是谁,但显然我们欠他的债......
php72-imagick
现在已弃用,因为 imagick 是 php 二进制文件本身的一部分。用于pecl
安装 imagick 例如:
brew install php
brew install imagemagick
brew install pkg-config
pecl install imagick
你的 ImageMagick 安装是不够的。您还需要 Imagick 包(php72-imagick
对于 home brew 可能称为或类似)。
Imagick 本身不做这项工作,它是一个原生 PHP 扩展,用于使用 ImageMagick API创建和修改图像。
尝试通过搜索包的确切名称brew search imagick
。
我正在使用优胜美地。对我来说,解决方案是这里已经列出的答案和评论的组合。
brew install imagemagick
brew install php55-imagick
编辑 /etc/php.ini 以包含 imagick
extension=/usr/local/Cellar/php55-imagick/{version of php55-imagick}/imagick.so
例子:
extension = /usr/local/Cellar/php55-imagick/3.1.2_1/imagick.so
我遇到过同样的问题。如果您使用的是 php 5.6,这些是对我有用的步骤
brew install php56-imagick
brew install imagemagick
find /usr/local/Cellar -name "imagick.so"
extension=/usr/local/Cellar/php56-imagick/3.3.0_2/imagick.so
保存您的文件。现在仔细检查 imagemagick 类是否存在类型
php -r "print(class_exists('imagick'));"
Brew 符号链接对我不起作用,因此我必须将完整路径名放入 php.ini 文件中才能使其正常工作。希望这可以帮助
这个对我有用:
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
尝试:
brew install homebrew/php/php53-imagick
我一直在寻找在 Mojavie 上安装 imagick 的正确方法,并找到了完全有效的解决方案。
现在,如果出现类似 MagicWand not found 的错误,请编辑文件 Makefile 并查找 CPPFLAGS = -I/usr/local/opt/imagemagick@6/include/。检查包含文件夹中是否没有其他文件夹。就我而言,它应该是这样的: CPPFLAGS = -I/usr/local/opt/imagemagick@6/include/ImageMagick-6
保存并返回终端并输入 make (完成后) sudo make install
imagick.so 位于 imagick-3.4.3/imagick-3.4.3/modules
好的,经过 1 小时后,我已经弄清楚了。mac 没有授予 pecl 脚本创建 PHP 目录的权限。要解决,请执行以下操作。
brew install imagemagick
Sudo pecl install imagick .
php --ini | grep "Loaded Configuration File"
Add extension=imagick.so under extensions.
安装将完成。然后,测试运行:
php -r "print(class_exists('imagick'));"
您是否添加extension=imagick.so
到您的php.ini
(或/etc/php.d/imagick.ini
)文件中?
我已经安装了imagemagick
和php71-imagick
.
brew upgrade imagemagick
- 为我做了诀窍。
您可能需要sudo
:
sudo brew upgrade imagemagick
您可能需要重新启动apache
// php-fpm
。<other webserver>
由于声誉,我无法添加评论,但要添加到此答案:
4 月 12 日 16:52 回答
格热戈日·米希凯维奇
I was getting a missing php.h file, so as per Installing xdebug on MacOs Mojave - 'php.h' file not found I installed the necessary file via the below command:
sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target /