miladrahimi / php-enum
PHP 抽象枚举类
v1.3
2021-08-04 09:34 UTC
Requires
- php: >=7.1|^8.0
Requires (Dev)
- phpunit/phpunit: ^7|^8|^9
README
PHP-Enum
为了让你的枚举类型更加生动,只需让它们继承 Enum
抽象类即可!
安装
安装 Composer 并在项目的根目录中运行以下命令
composer require miladrahimi/php-enum "1.*"
文档
考虑这个枚举类
namespace MiladRahimi\Enum\Enum; class SampleEnum extends Enum { const UNO = 1; const ONE = 1; const TWO = 2; const STR = "sth"; }
现在你可以使用这些方法了
SampleEnum::all(); // ['UNO' => 1, 'ONE' => 1, 'TWO' => 2, 'STR' => 'sth'] SampleEnum::keys(); // ['UNO', 'ONE', 'TWO', 'STR']; SampleEnum::values(); // [1, 1, 2, 'sth'] SampleEnum::hasKey('ONE'); // true SampleEnum::hasKey('xXx'); // false SampleEnum::hasValue(2); // true SampleEnum::hasValue('xXx'); // false SampleEnum::valueOf('ONE'); // 1 SampleEnum::keysOf(1); // ['UNO', 'ONE'] SampleEnum::keyOf(1); // 'UNO' SampleEnum::randomKey(); // One of 'UNO', 'ONE', 'TWO', 'STR' SampleEnum::randomKeyExceptKeys(['ONE', 'TWO']); // One of 'UNO', 'STR' SampleEnum::randomKeyExceptValues([SampleEnum::STR, SampleEnum::TWO]); // One of 'ONE', 'UNO' SampleEnum::randomValue(); // One of 1, 2, 'sth' SampleEnum::randomValueExceptValues([SampleEnum::STR, SampleEnum::TWO]); // One of SampleEnum::ONE, SampleEnum::UNO SampleEnum::randomValueExceptKeys(['STR', 'TWO']); // One of SampleEnum::ONE, SampleEnum::UNO
许可证
PHP-Enum 由 Milad Rahimi 创作并发布,遵循 MIT 许可证。