php 真正可用需满足:which php 返回 homebrew 路径(m1/m2 为 /opt/homebrew/bin/php,intel 为 /usr/local/bin/php),且 php -v ≥ 7.4;composer 必须用官方 phar 方式安装并正确配置 path 与阿里云镜像源。

确认 PHP 是否真能用,不是“有 php -v 就算数”
macOS 12+ 已彻底移除系统自带 php,哪怕你敲 php -v 能打出个版本,也极可能是旧版(比如 PHP 8.0 以下)、或 Homebrew 安装路径错乱导致的假象。Composer 要求 CLI 版本 ≥ 7.4,Apache 模块里的 PHP 不算数。
- 先运行
which php:M1/M2 应返回/opt/homebrew/bin/php,Intel 应为/usr/local/bin/php;若返回/usr/bin/php或空,说明没走 Homebrew 装的 PHP - 再确认
brew自身路径是否正确:which brew必须是/opt/homebrew/bin/brew(M 系列)或/usr/local/bin/brew(Intel),否则重装 - 执行
brew install php—— 它会自动装最新稳定版(如 PHP 8.3),不是旧版 - 如果
php还不可用,检查~/.zshrc或~/.zprofile是否含export PATH="/opt/homebrew/bin:$PATH"(M 系列)或对应 Intel 路径,然后务必source ~/.zshrc
别用 brew install composer,它已被弃用且在 M1/M2 上大概率失效
Homebrew 社区自 2023 年起已将 composer 包标记为 deprecated。你现在装,大概率遇到 command not found: composer、Permission denied、或卡死在陈旧的 v2.2.x 版本——尤其在 M1/M2 上,ARM64 兼容性差,还可能绑定错误的 PHP 版本。
- 官方唯一推荐方式是下载
composer.phar并手动部署,确保版本新、路径可控、不依赖 Homebrew 的二进制分发逻辑 - 执行
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(路径需一致)
环境变量没生效,是「改了没 source」或「source 了但新开终端没重载」
很多人 composer --version 在家目录能跑,一进项目目录就报错,本质是命令没真正进 $PATH,只是靠当前路径临时执行。关键不是“写完 ~/.zshrc”,而是“写完 + source + 跨目录验证”。
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
- 先确认 shell:
echo $SHELL输出/bin/zsh就编辑~/.zshrc,别动~/.bash_profile - 在
~/.zshrc末尾添加(路径必须与你实际安装位置一致):export PATH="/opt/homebrew/bin:$PATH"(M 系列)或export PATH="/usr/local/bin:$PATH"(Intel) - 执行
source ~/.zshrc—— 不是只改完就关终端 - 新开一个终端,再运行:
which composer必须输出/opt/homebrew/bin/composer或/usr/local/bin/composer;composer --version才算真成功
不配阿里云镜像源,90% 的 composer install 会卡住或超时
默认源 https://packagist.org 在国内访问极不稳定,这不是你网络差,是源站响应策略和 CDN 节点缺失导致的。不换镜像,composer create-project、composer require 经常卡在 “Resolving packages…” 或直接报 Connection timed out。
- 执行全局配置:
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ - 该命令写入
~/.composer/config.json,所有项目自动生效,且不会覆盖项目级私有 repo 配置 - 验证是否生效:
composer config -g repo.packagist应输出镜像地址 - 如果之前装过旧版 Composer 或手动改过配置,建议先删掉
~/.composer目录再重配,避免冲突
最容易被忽略的点:改完 ~/.zshrc 后没 source,或者开了新终端但忘记重新加载配置 —— 这会导致反复重装、怀疑人生。配环境变量不是“写完就完”,是“写完 + 生效 + 验证”。










