适用于需要简单管理多个PHP版本(通过官方或第三方仓库)的场景,适合不想安装额外工具的用户。

sudo apt updatesudo apt install software-properties-commonsudo add-apt-repository ppa:ondrej/php# 添加ondrej/php仓库(支持PHP 5.6-8.3+)sudo apt updatesudo apt install php7.4 php7.4-cli php7.4-fpm# 安装PHP 7.4及常用扩展sudo apt install php8.0 php8.0-cli php8.0-fpm# 同时可安装多个版本update-alternatives工具管理默认php命令:sudo update-alternatives --install /usr/bin/php php /usr/bin/php7.4 74# 注册PHP 7.4sudo update-alternatives --install /usr/bin/php php /usr/bin/php8.0 80# 注册PHP 8.0sudo update-alternatives --config php# 交互式选择默认版本php -v确认当前默认PHP版本。适用于需要灵活管理多个PHP版本(包括编译安装)、自定义编译选项或在不同项目中快速切换版本的用户。
curl -L -O https://github.com/phpbrew/phpbrew/releases/latest/download/phpbrew.pharchmod +x phpbrew.pharsudo mv phpbrew.phar /usr/local/bin/phpbrewphpbrew init,并按提示将环境变量添加到~/.bashrc或~/.zshrc:echo '[[ -e ~/.phpbrew/bashrc ]] && source ~/.phpbrew/bashrc' >> ~/.bashrcsource ~/.bashrcphpbrew install 7.4 +default +fpm +mysql +gd# 安装PHP 7.4及常用扩展phpbrew switch 7.4phpbrew use 7.4phpbrew list)、卸载版本(phpbrew uninstall 7.4)、更新phpbrew(phpbrew update)。适用于需要隔离环境、避免污染主机系统或快速部署不同PHP版本的项目,适合现代DevOps流程。
sudo apt updatesudo apt install docker.iosudo systemctl start dockersudo systemctl enable dockerdocker pull php:7.4-fpmdocker run -d --name my-php-app -p 9000:9000 php:7.4-fpmdocker-compose.yml编排多个服务(如PHP-FPM+MySQL+Nginx)。无论使用哪种方法,若需要同一系统运行多个PHP版本,还需管理对应扩展:
sudo apt install php7.4-mbstring php7.4-xml# 为PHP 7.4安装扩展sudo apt install php8.0-mbstring php8.0-xml# 为PHP 8.0安装扩展sudo a2dismod php7.4# 禁用PHP 7.4sudo a2enmod php8.0 # 启用PHP 8.0sudo systemctl restart apache2fastcgi_pass指令指向对应PHP-FPM socket(如/run/php/php7.4-fpm.sock或/run/php/php8.0-fpm.sock)。以上方法覆盖了Debian系统下PHP版本控制的主要场景,可根据实际需求(如是否需要隔离、自动化程度)选择合适的方式。