在Linux系统上安装和管理多个PHP版本可以通过以下几种方法实现:
添加Ondřej Surý的PHP PPA仓库:
sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt update
安装多个PHP版本:
sudo apt install php5.6 php5.6-fpm php5.6-cli php5.6-mysql
sudo apt install php7.0 php7.0-fpm php7.0-cli php7.0-mysql
sudo apt install php7.4 php7.4-fpm php7.4-cli php7.4-mysql
sudo apt install php8.0 php8.0-fpm php8.0-cli php8.0-mysql
切换PHP CLI版本:
sudo update-alternatives --config php
然后选择你要使用的版本。
切换PHP-FPM版本: 修改Nginx/Apache配置指向不同的PHP-FPM socket:
/var/run/php/php7.4-fpm.sock
/var/run/php/php8.0-fpm.sock
安装phpbrew:
curl -L -O https://github.com/phpbrew/phpbrew/raw/master/phpbrew
chmod +x phpbrew
sudo mv phpbrew /usr/local/bin/phpbrew
初始化phpbrew:
phpbrew init
echo '[[ -e ~/.phpbrew/bashrc ]] && source ~/.phpbrew/bashrc' >> ~/.bashrc
source ~/.bashrc
安装多个PHP版本:
phpbrew install 7.4.0 +default
phpbrew install 8.0.0 +default
切换PHP版本:
phpbrew use php-7.4.0
phpbrew use php-8.0.0
拉取不同PHP版本的Docker镜像:
docker pull php:7.4-cli
docker pull php:8.0-cli
运行特定版本:
docker run -it --rm php:7.4-cli php -v
docker run -it --rm php:8.0-cli php -v
下载不同PHP版本源码:
wget https://www.php.net/distributions/php-7.4.0.tar.gz
wget https://www.php.net/distributions/php-8.0.0.tar.gz
编译安装到不同目录:
tar -xzvf php-7.4.0.tar.gz
cd php-7.4.0
./configure --prefix=/opt/php/7.4.0
make && sudo make install
通过修改PATH切换版本:
export PATH=/opt/php/7.4.0/bin:$PATH
update-alternatives
可以更方便地管理多个版本以上方法可以根据你的具体需求选择使用,PPA方法最简单,phpbrew最灵活,Docker最隔离,手动编译最可控。