Mac上安装Composer应直接用curl下载安装脚本并移至/usr/local/bin,macOS 12+需配置~/.zshrc中的PATH并执行source生效,验证需跨目录运行且which composer应返回/usr/local/bin/composer。

Mac 上装 Composer 不需要下载安装包,直接用命令行安装即可;但环境变量配置容易出错,尤其是 macOS 12+(Monterey)之后默认 shell 从 bash 切到 zsh,~/.bash_profile 会失效。
用 curl 直接安装 Composer 到全局可执行路径
官方推荐方式是通过 curl 下载安装脚本并执行,不依赖 Homebrew(避免因 Homebrew 权限或镜像问题卡住):
- 打开终端,运行:
curl -sS https://getcomposer.org/installer | php
- 把生成的
composer.phar移到系统 PATH 下,例如:sudo mv composer.phar /usr/local/bin/composer
- 验证是否生效:
composer --version
—— 若报command not found,说明 PATH 没配好,继续看下一步
macOS 12+ 正确配置 PATH 环境变量(zsh 用户必看)
新版 macOS 默认用 zsh,它读取的是 ~/.zshrc 或 ~/.zprofile,不是旧的 ~/.bash_profile。写错文件等于白配。
- 先确认当前 shell:
echo $SHELL
输出/bin/zsh就走zsh配置流程 - 编辑
~/.zshrc:nano ~/.zshrc
- 在文件末尾添加(注意路径与你实际安装位置一致):
export PATH="/usr/local/bin:$PATH"
- 保存后立即生效:
source ~/.zshrc
- 如果用了 M1/M2 Mac 且 Homebrew 装在
/opt/homebrew,还需加这一行:export PATH="/opt/homebrew/bin:$PATH"
验证 composer 是否真能跨目录调用
别只在 home 目录下测,换到任意项目目录(比如 ~/Sites/myproject)再运行 composer,才说明 PATH 全局生效。
- 常见假成功现象:
composer在安装目录能跑,但进子目录就报错 —— 本质是没进PATH,而是靠当前路径临时执行 - 检查命令真实路径:
which composer
应该输出/usr/local/bin/composer,而不是./composer或/Users/xxx/composer - 如果用 Oh My Zsh,插件或主题可能覆盖
PATH,可在~/.zshrc中把export PATH=...放在最顶部
最常被忽略的一点:改完 ~/.zshrc 后没运行 source,或者开了新终端但忘记重新加载配置 —— 这会导致反复重装、怀疑人生。配环境变量不是“写完就完”,是“写完 + 生效 + 验证”。











