Mac上不能用brew install composer,应先用Homebrew安装PHP,再通过官方脚本下载composer.phar并移至/opt/homebrew/bin(M系列)或/usr/local/bin(Intel),最后赋予执行权限。

composer 在 Mac 上不能直接用 brew install composer 了——Homebrew 社区已弃用该方式,安装后常报错、版本滞后、权限混乱,尤其在 M1/M2 芯片上极易失败。
正确做法是:**用 Homebrew 装好 PHP,再用官方脚本安装 Composer,并手动放到 /opt/homebrew/bin(M 系列)或 /usr/local/bin(Intel)下**。下面分步说明。
确认 Homebrew 已装对位置(M1/M2 必看)
运行 which brew,输出必须是 /opt/homebrew/bin/brew。如果是 /usr/local/bin/brew,说明你装的是 Intel 版,得重装:
rm -rf /usr/local/bin/brew /usr/local/share/doc/homebrew /usr/local/share/man/man1/brew.1 /usr/local/share/zsh/site-functions/_brew /usr/local/etc/bash_completion.d/brew arch -arm64 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
装完后立刻配置环境变量(Zsh 用户):
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile source ~/.zprofile
必须先装 PHP,且路径要匹配
Composer 是 PHP 写的,没 PHP 就跑不起来。Mac 自带 PHP 已被弃用,必须用 Homebrew 装:
-
brew install php—— 安装最新稳定版(如 PHP 8.3) -
php -v应输出版本号 -
which php必须是/opt/homebrew/bin/php(M 系列)或/usr/local/bin/php(Intel) - 如果
php命令找不到,检查~/.zprofile是否已导出/opt/homebrew/bin到PATH
用官方脚本安装 Composer(唯一推荐方式)
别信 brew install composer,它长期不更新,且默认绑定旧 PHP,容易出现 PHP Parse error 或 command not found。
执行以下三步:
curl -sS https://getcomposer.org/installer | php sudo mv composer.phar /opt/homebrew/bin/composer sudo chmod +x /opt/homebrew/bin/composer
验证:composer --version 输出类似 Composer version 2.7.7 即成功。
⚠️ 注意:sudo mv 是必须的——否则 composer 只能在当前目录用 php composer.phar,没法全局调用。
常见错误与绕过方案
遇到这些提示,基本都是路径或权限问题:
-
command not found: composer→ 检查which composer;若无输出,确认/opt/homebrew/bin在PATH中(echo $PATH) -
Permission denied当运行composer→sudo chmod +x /opt/homebrew/bin/composer补上执行权限 -
PHP Warning: require(): Failed opening required 'phar://composer.phar/bin/composer'→ 说明composer.phar被移动或损坏,重跑安装脚本即可 - 用
composer create-project报zip extension missing→brew install php@8.3后再brew link php@8.3,并确保extension=zip在php.ini中未被注释
php 和 composer 看不到彼此**。只要 which php 和 which composer 都指向 /opt/homebrew/bin/xxx,且 php -m | grep zip 有输出,就基本不会翻车。










