Composer中~和^的含义

PHP语言 专栏收录该内容
37 篇文章 0 订阅

关于这两个字符的含义,网上已经很多的文章进行过介绍了。但是,我觉得介绍的都比较官方你。
你用力去理解的话,也是可以理解的。
本篇文章不是对哪些介绍的再次赘述。只是提供一个比较简单直接的方法,帮助你去区分。

一、背景知识

一个扩展包的通常是这样的。

\www\wwwroot\web>php artisan --version
Laravel Framework 6.20.27

这里的laravel的版本是6.20.27

6 表示主版本号
20 表示次版本号
27 表示修订号

二、^和~的功能

^~的出现是为了对扩展包进行版本锁定的。它们的区别如下:

^表示锁定主版本号。
~表示锁定次版本号。

三、举例

我们假定这个扩展的主版本号6,中间的次版本号最大是99,末尾的修订号是999
^6.20 表示版本的范围是6.20.06.99.999
~6.20 表示版本的范围是6.20.06.20.999

四、扩展

  1. 头部版本
    也就是主版本号。
    因为在正则中的^,一般都是表示匹配一个开始字符的位置。功能跟这个类似,可以类比理解。
  2. 中间版本
    也就是次版本号
    ~ 我们一般用来泛指一个有序数列,比如1~9。所以这个字符一般也就出现在中间部分。可以类比记录,表示对中间的操作。
  • 0
    点赞
  • 1
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值