应使用官方脚本安装 composer:curl -ss https://getcomposer.org/installer | php,再移至 /opt/homebrew/bin/composer(m1/m2)或 /usr/local/bin/composer(intel),并 chmod +x;同时配置阿里云镜像源避免超时。

Mac 上别用 brew install composer
Homebrew 的 composer 包自 2023 年起已被官方标记为 deprecated,现在装了大概率会遇到:command not found: composer、Permission denied、或者卡在老旧的 v2.2 版本。M1/M2 芯片上尤其明显——它默认绑定系统旧 PHP 或 Intel 架构路径,和你通过 brew install php 装的新版 PHP 根本不匹配。
- 不是 Homebrew 不好,是这个包没人维护了
- 即使装成功,
composer --version显示的版本也常滞后于官方最新版(当前稳定版已是 v2.7.x) - 它还会偷偷把
composer.phar放进奇怪位置(比如~/.homebrew/bin),导致which composer找不到
先确认 PHP 路径对不对,再动 Composer
Composer 是个 PHP 脚本,没 PHP 就跑不起来;而 macOS 12+ 已彻底移除系统自带 PHP,php -v 报错或显示 PHP 8.0 以下,都说明不能直接用。
- 运行
which brew:必须是/opt/homebrew/bin/brew(M 系列)或/usr/local/bin/brew(Intel);否则重装 Homebrew - 执行
brew install php—— 它会装最新稳定版(如 PHP 8.3) - 验证:
php -v有输出,且which php返回/opt/homebrew/bin/php或/usr/local/bin/php - 如果
php还是找不到,检查~/.zshrc或~/.zprofile是否含export PATH="/opt/homebrew/bin:$PATH",然后运行source ~/.zshrc
用官方脚本装 composer.phar,手动放到正确路径
这是目前唯一可靠、可复现、ARM64 兼容的方式。脚本自动适配你本地的 PHP 版本,不会绑死旧环境。
- 执行:
curl -sS https://getcomposer.org/installer | php→ 当前目录生成composer.phar - 移到全局路径:
• M1/M2:sudo mv composer.phar /opt/homebrew/bin/composer
• Intel:sudo mv composer.phar /usr/local/bin/composer - 立刻赋权:
sudo chmod +x /opt/homebrew/bin/composer(缺这步必报 Permission denied) - 验证:
composer --version应输出类似Composer version 2.7.7;若报错,先跑which composer看路径是否在$PATH里
国内用户必须配阿里云镜像源,否则 composer install 十次九超时
默认源 https://packagist.org 在国内访问极不稳定,经常卡在 “Resolving dependencies” 或直接报 Connection timed out,这不是你网络问题,是源本身不可靠。
- 运行:
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ - 该命令写入全局配置(
~/.composer/config.json),所有项目都生效 - 不需要改项目级
composer.json,也不用手动加repositories字段 - 验证是否生效:进任意空目录,运行
composer create-project laravel/laravel test,看是否能快速拉取依赖
最容易被忽略的其实是两件事:一是改完 ~/.zshrc 后没 source,二是以为 composer 在当前目录能跑就算装好了——其实得换到 ~/Sites/myapp 这类子目录下再试一次,which composer 必须返回系统路径才算真正就位。










