背景:
当开发环境配置多版本php,根据项目所需切换php版本时我们composer也需要切换到合适的版本才能友好解决php框架所需的依赖、三方库、包等匹配加载。故此在这里向大家推荐了总结的方法,可能方法有点老土了但是切实的能解决上述的问题,希望能给大家带来方便吧,如果大家有好的方案也希望通过评论分享出来,谢谢大家的支持!!!
***在这里就不去说php多版本部署了,因为很多集成的工具都能很方便的切换php版本了。
composer 安装:
1、对应关系速查表
PHP 版本范围 推荐 Composer 版本 备注
PHP 5.3.2 - 7.1 Composer 1.x(≤1.10) 旧项目需强制锁定 Composer 1.x
PHP 7.2.5 - 7.4 Composer 2.x(推荐) 可升级到 Composer 2.x,兼容性良好
PHP 8.0+ Composer 2.x(最新版) 必须使用 Composer 2.0+
2、安装及配置:
⑴ 创建目录 D:\composer\versions(目录根据自己习惯可以随意修改,这里就按这个目录做例子)
⑵ 创建环境变量 D:\composer\versions添加到环境变量中
⑶ 将下载的多版的composer的composer.phar文件都放到上面的目录里,最好重名一下composer.phar,
像我这样:
php5.3.29~7.1.9-composer-1.10.23.phar
php7.2.5~7.4-composer-2.7.9.phar
php7.2.5n-composer-2.8.9.phar
***之后新版本的发布时就可以把新的composer.phar 扩展到 这个目录就可以了。
⑷ 创建 .bat windows脚本文件(内容下载:https://download.csdn.net/download/qq_35834763/90939174)命名为 my-composer.bat 也放到上面的目录里吧。
3、使用方式:
以laravel6(laravel 对php版本要求是 >=7.2.5的)为例,执行下载
到环境目录D:\phpstudy_pro\WWW 右键打开 git bash 或者shfit + 右键打开 Windows PowerShell
官方给到的用composer下载命令式:
composer create-project --prefer-dist laravel/laravel [项目名] "6.*"
那我们有了composer版本切换工具之后命令是:
my-composer.bat create-project --prefer-dist laravel/laravel prebook "6.*"(注:这里为什么能直接使用.bat呢是因为 前面我们 .bat存放的目录添加了系统环境变量了所以····)
***这里一直没有提到当前php版本是啥呢因为 当 .bat被调用时 他会让你选择你要当前用什么版本的php去运行呢,选择框架所需的php版本就可以了。
或者:
my-composer.bat **php72** create-project --prefer-dist laravel/laravel [项目名] "6.*"
php72就作为变量提前输入也是可以的。
****上面两种命令形式 都已经测试过了,如果大家有更好优化也可以分享到评论区,感谢!!!
******作文水平有限感觉上面说的有点乱,已经尽力了。希望大家能体谅一下,我会学习提升作文水平的,谢谢了