应选phpbrew而非homebrew:因phpbrew为每个php版本独立编译、独享php.ini与扩展目录,支持项目级精准切换且不干扰其他环境;homebrew切换需手动unlink/link,无法并行运行多版本php-fpm。

Mac系统需要在不同项目间切换PHP版本,比如老项目依赖PHP 7.4而新项目要求PHP 8.3,用系统自带或Homebrew单版本管理会频繁冲突、反复重装。
为什么不用Homebrew而选Phpbrew
Homebrew安装的PHP版本默认共用同一套配置和扩展,【切换版本需手动unlink/link,且无法同时启用多个php-fpm服务】;Phpbrew专为多版本隔离设计,每个版本独立编译、独立php.ini、独立扩展目录,项目级切换不干扰其他环境。
Phpbrew不依赖系统包管理器,直接从源码编译,可精确控制编译选项(如是否启用zts、openssl路径等),适合需要深度定制PHP行为的场景。
安装Phpbrew
打开终端,执行安装命令:
curl -L -O https://github.com/phpbrew/phpbrew/releases/latest/download/phpbrew && chmod +x phpbrew && sudo mv phpbrew /usr/local/bin/
运行phpbrew init初始化环境:
phpbrew init
将初始化脚本加入shell配置文件:Apple Silicon Mac执行echo 'source ~/.phpbrew/bashrc' >> ~/.zshrc;Intel Mac同理写入~/.zshrc或~/.bash_profile。
重新加载配置:source ~/.zshrc。
安装指定PHP版本
第一步:更新版本列表
phpbrew update
第二步:查看可用版本
phpbrew known --old
第三步:安装PHP 7.4(含常用扩展)
phpbrew install 7.4 +default +pdo +mysql +curl +openssl +mbstring
这一步耗时较长,因全程编译;若中途失败,可加--debug参数排查;【务必确保Xcode Command Line Tools已安装,否则编译必然中断】。
第四步:安装PHP 8.3
phpbrew install 8.3 +default +opcache +json +xml +zip
切换与使用PHP版本
方法一:临时切换当前终端会话版本
phpbrew use php-7.4
此时php -v显示7.4.x,关闭终端后自动还原。
方法二:永久设为默认版本
phpbrew switch php-8.3
该操作会修改~/.phpbrew/php/php-8.3/bin/php为系统默认php命令指向,所有新终端均生效。
方法三:为单个项目指定PHP解释器
进入项目根目录,执行phpbrew exec php-7.4 --version,直接调用7.4版本执行命令,不改变全局状态。
管理PHP配置文件
每个版本的php.ini位于~/.phpbrew/php/php-X.Y.Z/etc/php.ini。
修改前先备份原文件:cp ~/.phpbrew/php/php-7.4/etc/php.ini ~/.phpbrew/php/php-7.4/etc/php.ini.bak。
启用扩展只需取消对应行前的分号,例如extension=gd.so;但注意:Phpbrew安装时未编译的扩展(如redis)需单独用phpbrew ext install redis安装,不能仅靠改ini启用。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











