背景
我们在开发项目的时候,可能会遇到不同项目依赖的php版本不一样的问题,比如A项目依赖的是php 5.6 的老项目,而B项目则是依赖php 8.1 的新项目。像这样版本跨度很大的开发环境下,我就有切换PHP版本的需要了。切换php版本后,可能还需要考虑各个版本的扩展插件问题
这里我介绍一个工具homebrew-php,主要解决两个问题
- 1、很方便的安装和切换不同版本的PHP
- 2、很方便的为各个版本的PHP扩展插件
本篇文章仅适用于macos 环境,window 和 linux 环境待研究
1、不同版本php安装
# 扩展第三方库
brew tap shivammathur/php
# install php 7.4
brew install shivammathur/php/php@7.4
# install php 8.1
brew link --overwrite --force shivammathur/php/php@8.1
# 切换到7.4
brew link --overwrite --force shivammathur/php/php@7.4
# 切换到8.1
brew link --overwrite --force shivammathur/php/php@8.1
2、PHP 插件
homebrew-extension 可以安装对应版本的php插件
# 扩展第三方库
brew tap shivammathur/extensions
# php@8.1 安装xdebug 插件支持
brew install shivammathur/extensions/xdebug@8.1
# php@7.4 安装redis 插件支持
brew install shivammathur/extensions/redis@7.4
brew tap 是什么,跟brew install 什么关系?
brew tap 可以看作是用于添加第三方库的。如果直接安装shivammathur/php/php@7.4
是会报包未发现,需要添加shivammathur/php
这个第三方库。
使用方法:brew tap <gihhub_user/repo>
3、结果
如果觉得切换命令过长,记不住的话,那可以添加个alias 短命令, 在
.bashrc
或.config/fish/config.fish
中添加alias php_74 = "brew link --overwrite --force shivammathur/php/php@7.4"