linux 多个PHP版本切换版本

一、当系统存在多个 PHP 版本时,核心是通过 update-alternatives(系统级软链接管理) 或 直接指定绝对路径,确保 php、phpize、php-config 指向目标版本(最新版)

第一步:先找到所有 PHP 版本的安装路径

php 复制代码
# 搜索 php 可执行文件
which -a php
find /usr/bin -name "php*" | grep -E "php$|php[0-9]+\.[0-9]+$"

# 搜索 phpize(编译依赖)
which -a phpize
find /usr/bin -name "phpize*" | grep -E "phpize$|phpize[0-9]+\.[0-9]+$"

# 搜索 php-config(编译配置依赖)
which -a php-config
find /usr/bin -name "php-config*" | grep -E "php-config$|php-config[0-9]+\.[0-9]+$"

或者查找
find / -name php-fpm

第二步:用 update-alternatives 配置系统默认版本

bash 复制代码
# 1. 添加 PHP 7.4 到 php 替代组(优先级设为 100,数字越大优先级越高)
sudo update-alternatives --install /usr/bin/php php /usr/bin/php7.4 100

# (可选)如果之前有旧版本(如 PHP 7.2),也添加到替代组(优先级设为 90,低于 7.4)
sudo update-alternatives --install /usr/bin/php php /usr/bin/php7.2 90

# 2. 选择默认的 php 版本(会弹出交互界面,选对应 PHP 7.4 的序号)
sudo update-alternatives --config php

按上诉方式依次替换 phpize php-config

补充:CentOS 系统的差异

CentOS 没有 update-alternatives 对 PHP 的默认支持,需手动创建软链接,步骤如下:

bash 复制代码
先删除旧的软链接(如果存在)
sudo rm -f /usr/bin/php /usr/bin/phpize /usr/bin/php-config

为最新版本创建新的软链接(假设 PHP 7.4 路径为 /usr/bin/php74,需根据实际路径调整):
# 假设 PHP 7.4 安装在 /usr/bin/php74、/usr/bin/phpize74、/usr/bin/php-config74
sudo ln -s /usr/bin/php74 /usr/bin/php
sudo ln -s /usr/bin/phpize74 /usr/bin/phpize
sudo ln -s /usr/bin/php-config74 /usr/bin/php-config
相关推荐
Trouvaille ~7 分钟前
【MySQL篇】数据库操作:从创建到管理
linux·数据库·mysql·oracle·xshell·ddl
酸钠鈀10 分钟前
AI WB2 SDK Ubuntu 环境搭建
linux·运维·ubuntu
Robot_Nav14 分钟前
双系统Linux死机解决方法
linux·运维·服务器
加勒比之杰克1 小时前
从阻塞 IO 到 epoll:把 Linux 网络 IO 一次讲透
linux·网络·windows·select·多路转接·epoll·poll
书到用时方恨少!1 小时前
Linux 常用指令使用指南:从入门到“救命”
linux·运维·服务器
fengci.1 小时前
php反序列化(复习)(第三章)
android·开发语言·学习·php
说实话起个名字真难啊1 小时前
Docker 入门之网络基础
网络·docker·php
默|笙1 小时前
【Linux】线程同步与互斥_同步(1)
linux
Deitymoon1 小时前
linux——条件变量
linux
竹之却1 小时前
【Agent-阿程】openclaw v2026.4.9更新内容介绍
开发语言·php·openclaw·openclaw 更新