steevanb / version-comparator
比使用version_compare()更易于比较PHP版本
0.2.0
2021-10-23 22:57 UTC
Requires
- php: ^5.6 || ^7.0 || ^8.0
Requires (Dev)
- ext-simplexml: *
- phpunit/phpunit: 9.5.*
- steevanb/php-backtrace: 2.1.*
- symfony/var-dumper: 5.3.*
This package is auto-updated.
Last update: 2024-09-24 05:51:10 UTC
README
steevanb/version-comparator
通过添加类来简化版本比较,比使用compare_version()
和PHP_VERSION
更容易。
安装
composer require steevanb/version-comparator ^0.2
与当前PHP版本比较
您可以将当前PHP版本与两个版本进行比较,以确定当前PHP版本是否介于这两个版本之间
PhpVersionComparator::isBetween('8', '9'); // return true is PHP is >= 8.0.0 and < 9.0.0 PhpVersionComparator::isBetween('8.0', '8.1'); // return true is PHP is >= 8.0.0 and < 8.1.0 PhpVersionComparator::isBetween('8.0.0', '8.0.2'); // return true is PHP is >= 8.0.0 and < 8.0.2
每个PHP主版本和子版本的快捷键
PhpVersionComparator
有一个快捷方式,为每个主版本和子版本调用isBetween()
// For PHP 5.3 to 5.6 PhpVersionComparator::isPhp5(); // return true is PHP is >= 5.0.0 and < 6.0.0 PhpVersionComparator::isPhp53(); // return true is PHP is >= 5.3.0 and < 5.4.0 PhpVersionComparator::isPhp54(); // return true is PHP is >= 5.4.0 and < 5.5.0 PhpVersionComparator::isPhp55(); // return true is PHP is >= 5.5.0 and < 5.6.0 PhpVersionComparator::isPhp56(); // return true is PHP is >= 5.6.0 and < 5.7.0 // For PHP 7.0 to 7.4 PhpVersionComparator::isPhp7(); // return true is PHP is >= 7.0.0 and < 8.0.0 PhpVersionComparator::isPhp70(); // return true is PHP is >= 7.0.0 and < 7.1.0 PhpVersionComparator::isPhp71(); // return true is PHP is >= 7.1.0 and < 7.2.0 PhpVersionComparator::isPhp72(); // return true is PHP is >= 7.2.0 and < 7.3.0 PhpVersionComparator::isPhp73(); // return true is PHP is >= 7.3.0 and < 7.4.0 PhpVersionComparator::isPhp74(); // return true is PHP is >= 7.4.0 and < 7.5.0 // For PHP 8.0 to latest 8.x PhpVersionComparator::isPhp8(); // return true is PHP is >= 8.0.0 and < 9.0.0 PhpVersionComparator::isPhp80(); // return true is PHP is >= 8.0.0 and < 8.1.0 PhpVersionComparator::isPhp81(); // return true is PHP is >= 8.1.0 and < 8.2.0
异常代替返回结果
如果您想抛出异常而不是返回结果,每个方法都有一个对应的assert()
版本,该版本会抛出VersionIsNotBetweenException
异常
PhpVersionComparator::assertIsBetween('8', '9'); PhpVersionComparator::assertIsPhp5(); // etc