最稳方案是用 Homebrew 安装 Composer:执行 brew install composer,二进制自动软链至 /usr/local/bin(Intel)或 /opt/homebrew/bin(Apple Silicon),需确保该路径在 $PATH 中;国内用户务必配置阿里云镜像源以避免超时。

直接装 Homebrew 版 composer 最稳
Mac 上装 composer,别碰官方 PHP 脚本一键安装(php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"...),它默认装到当前目录、没权限管理、升级麻烦,新手极易卡在权限或路径上。
用 Homebrew 是最省心的路径:它自动处理依赖、二进制位置统一、升级只需 brew update && brew upgrade composer。
- 先确认已装 Homebrew:
which brew,没输出就去官网装一遍 - 执行:
brew install composer - 验证:
composer --version能打出版本号就成功了
composer 的可执行文件在哪?别瞎猜 /usr/local/bin
Homebrew 安装后,composer 二进制实际在 /opt/homebrew/bin/composer(Apple Silicon)或 /usr/local/bin/composer(Intel),但 Homebrew 会通过 brew link 自动软链到 /usr/local/bin —— 这个路径必须在你的 $PATH 里,否则终端认不出来。
常见错误现象:command not found: composer,不是没装好,是 shell 没找到它。
- 检查当前
PATH:echo $PATH,看有没有/usr/local/bin或/opt/homebrew/bin - Zsh(macOS Catalina 及以后默认)用户,编辑
~/.zshrc,加一行:export PATH="/opt/homebrew/bin:$PATH"(Apple Silicon)或export PATH="/usr/local/bin:$PATH"(Intel) - 改完执行:
source ~/.zshrc,再试composer --version
全局配置 composer 镜像源,不然装包慢到怀疑人生
默认走国外源(https://packagist.org),国内用户不换镜像,composer create-project 或 require 动不动超时、404、卡住十几分钟。这不是网络问题,是源站响应策略导致的。
换阿里云或腾讯云镜像最可靠,且只影响当前用户,不污染系统。
- 执行:
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ - 验证是否生效:
composer config -g repo.packagist应输出镜像地址 - 如果项目里已有
composer.json并设了私有 repo,全局镜像不会覆盖它,优先级合理
别把 composer.phar 手动扔进 /usr/local/bin
有人下载 composer.phar 后 chmod +x 再 mv 到 /usr/local/bin/composer,看起来能用,但后续会出一堆隐性问题:
- 升级失效:
composer self-update会失败或降级成旧版 - PHP 版本绑定死:.phar 文件内嵌 PHP 版本检查逻辑,和你系统 PHP 不匹配时直接报错
Composer is not compatible with your PHP version - Homebrew 更新时可能覆盖或冲突,导致命令突然消失
真要手动控制版本(比如必须用 Composer 2.2),用 brew install composer@2.2(如果存在该公式),而不是绕过包管理器硬塞文件。
复杂点在于:环境变量、PHP 版本、镜像源、包缓存路径(~/.composer/cache)四者联动,任意一个配错,composer install 就可能静默失败或拉错依赖。盯住 composer diagnose 的输出,比反复重装有用得多。










