composer require安装指定版本
版本符号说明
#最新版 * # 大于等于1.0的最高版本 >=1.0 #大于等于1.0且小于2.0的最高版本 >=1.0 <2.0 #1.0至2.0之间的最高版本 1.0 - 2.0 #>=1.0且<1.1的最高版本 1.0.* #>=1.2且<2.0的最高版本 ~1.2 #>=1.2.3且<1.3.0最高版本 ~1.2.3 #>=1.2.3且<2.0.0的最高版本 ^1.2.3
安装依赖包
composer require xxx/xxx:1.0.x composer require xxx/xxx=1.0.x@dev
两种安装方式。第二种加个 @dev 标志意思是说可以安装开发版本,因为composer 默认只取 stable 版本
一般情况下依赖包里的composer.json里有个字段 minimum-stability是用来标志此版本是什么版本的值一般有 dev、alpha、beta、RC、stable,默认是 stable
安装开发依赖包
什么意思呢?,意思就是这些依赖包是开发这个项目时为啦测试一些东西而使用的,跟功能没有关系,这样别人下载后不会安装这些库,使用方法如下
composer require xxx/xxx --dev
--dev: 将依赖添加到 require-dev。
--prefer-source: 尽可能从 源码 安装。
--prefer-dist: 尽可能从 发布 安装。
--no-progress: 移除进度条的显示来避免和一些终端或不支持退格字符的脚本冲突。
--no-suggest: 跳过输出中建议的依赖。
--no-update: 禁止依赖自动升级。
--no-scripts: 跳过执行在 composer.json 定义的脚本。
--update-no-dev: 用 --no-dev 选项执行依赖升级。
--update-with-dependencies: 升级最近引入的依赖,排除根依赖。
--update-with-all-dependencies: 升级最近引入的依赖,包括根依赖。
--ignore-platform-reqs: 忽略 php,hhvm,lib-* 和 ext-* 依赖并强制安装,即使本地计算机不能完全支持这些特性。详见 platform。 详见 platform。
--prefer-stable: 稳定版本优先。
--prefer-lowest: 最低版本优先。测试依赖的最低版本时候很有用,一般和 --prefer-stable 联用。
--sort-packages: 保持 composer.json 中的依赖排列顺序。
--optimize-autoloader (-o): 转换 PSR-0/4 自动加载到 classmap 以获取更快的加载速度。很建议在生产环境中这样做,但执行比较耗时,所以默认是关闭的。
--classmap-authoritative (-a): 只自动加载 classmap 中的类名。需要开启 --optimize-autoloader。
--apcu-autoloader: 使用 APCu 来缓存找到和没找到的类名。
更多命令参考:
https://getcomposer.org/doc/03-cli.md#require