aeviiq / enum
枚举组件
v4.0
2023-12-14 12:32 UTC
Requires
- php: ^8.1
Requires (Dev)
- phpstan/phpstan: ^1.10
- phpstan/phpstan-phpunit: ^1.3
- phpstan/phpstan-strict-rules: ^1.5
- phpunit/phpunit: ^10.0
- psalm/plugin-phpunit: ^0.18.4
- thecodingmachine/phpstan-strict-rules: ^1.0
- vimeo/psalm: ^5.4
README
为什么
为了提供在PHP中实现枚举标志的方法。
安装
composer require aeviiq/enum
声明
final class Foo extends AbstractFlag { public const BAR = 1; public const BAZ = 2; // ... }
使用
$foo = new Foo(Foo:BAR); $foo->contains(new Foo(Foo:BAR)); // True $foo->contains(new Foo(Foo:BAZ)); // False $foo->contains(new Bar(Foo::BAR)); // InvalidArgumentException thrown $foo = new Foo(6); // UnexpectedValueException thrown