You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac OS El Capitan下PHP7.1无法加载imagick.so及相关问题求助

解决 PHP 7.1 启动时 Imagick 加载失败与 Mcrypt 重复加载问题

先理清楚你遇到的两个核心问题:Imagick 扩展找不到导致的启动警告,以及 Mcrypt 模块重复加载的提示,下面分步骤解决:

一、修复 Imagick 扩展加载失败的问题

你用 brew reinstall -s php71-imagick 报错找不到公式,是因为 Homebrew 官方已经移除了旧 PHP 版本的扩展公式,需要借助第三方 tap 来获取适配 PHP 7.1 的扩展包,具体操作:

  1. 清理残留的无效扩展配置
    先找到 PHP 7.1 的配置目录(一般是 /usr/local/etc/php/7.1/conf.d/),删除里面所有和 imagick 相关的 .ini 文件(比如 ext-imagick.ini 或者 php71-imagick.ini),这些旧配置指向的路径已经失效了。

  2. 添加支持旧 PHP 版本的 Homebrew 源
    在终端执行以下命令添加第三方 tap,它维护了很多旧版本 PHP 的扩展:

    brew tap shivammathur/php
    
  3. 重新安装适配 PHP 7.1 的 Imagick 扩展
    现在可以安装正确命名的扩展包了:

    brew install shivammathur/php/php@7.1-imagick
    
  4. 验证安装结果
    安装完成后,执行 php -v,如果 Imagick 的警告消失,说明问题解决。如果还存在,可以用 brew info php@7.1-imagick 查看扩展的实际安装路径,然后手动在 /usr/local/etc/php/7.1/php.ini 里添加一行(替换成实际路径):

    extension=/usr/local/Cellar/php@7.1-imagick/[具体版本号]/lib/php/20160303/imagick.so
    

二、修复 Mcrypt 模块重复加载的警告

这个问题很简单,就是你的 PHP 配置里重复声明了 mcrypt 模块的加载:

  1. 定位重复配置
    打开 PHP 7.1 的主配置文件 /usr/local/etc/php/7.1/php.ini,或者检查 conf.d 目录下的 mcrypt 相关 .ini 文件。

  2. 删除重复的加载行
    搜索 extension=mcrypt.so(或者类似的配置行),找到重复出现的那一行并删除,保存配置文件。

  3. 验证修复
    再次执行 php -v,Mcrypt 的重复加载警告就会消失。

额外注意事项

如果安装 Imagick 时还是报错,可能是系统缺少 Imagick 的依赖库,你可以先安装适配旧版本的 Imagemagick:

brew install imagemagick@6

安装完成后再重新安装 PHP 的 Imagick 扩展即可。

内容的提问来源于stack exchange,提问作者BARNOWL

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 08:51:41