fzed51/version

类用于处理版本号

v2.0.0 2022-10-16 14:26 UTC

This package is auto-updated.

Last update: 2024-09-16 18:31:22 UTC


README

类用于处理语义版本号

安装

composer require fzed51/version

使用

从构造函数创建,SemVer 对象会自动转换为字符串。它为版本的每个元素提供getter。它支持主版本号、次版本号、补丁、预发布和构建元数据。

$version = new \Version\SemVer(1,0,0);
echo $version; // v1.0.0
echo $version->major(); // 1
$version = new \Version\SemVer(1,1,0);
$version->nextMinor();
echo $version; // v1.2.0
$version = new \Version\SemVer(1,1,0);
$version->nextMajor();
echo $version; // v2.0.0
$version = new \Version\SemVer(1,0,0,'dev');
echo $version; // v1.0.0-dev
$version->setRelease('rc1')
echo $version; // v1.0.0-rc1
$version->setMetaBuild('01122021-1630')
echo $version; // v1.0.0-rc1+01122021-1630
$version->setMetaBuild();
echo $version; // v1.0.0-rc1
$version->setRelease();
echo $version; // v1.0.0
$version = \Version\SemVer::fromString('v2.4');
echo $version; // v2.4.0
$version1 = new \Version\SemVer(1,1,0);
$version2 = new \Version\SemVer(11,0,0);
var_dump($version2->gt($version1)); // true
var_dump($version2->ge($version1)); // true
var_dump($version2->eq($version1)); // false
var_dump($version2->le($version1)); // false
var_dump($version2->lt($version1)); // false
var_dump($version2->ne($version1)); // true
$version = new \Version\SemVer(1,1,0,'rc1','12242010');
$json = json_encode($version) ;
echo $json; // {"major":1,"minor":0,"patch":0,"preRelease":"rc1","metaBuild":"12242010"}