froler314/enum
最新稳定版本:v4.2.3
Composer 安装命令:
composer require froler314/enum
包简介
Enum lib
README 文档
README
Library for enumerate objects
Simple use
Create enum class with constants:
class MyEnum extends Enum { const CONSTANT_A = 'value_a'; const CONSTANT_B = 'value_b'; }
Use it as object or as scalar:
$enumObject = MyEnum::getInstance(MyEnum::CONSTANT_A); echo $enumObject->getValue(); // prints 'value_a' echo $enumObject; // also prints 'value_a'
Validate enum by passing whole object instead of scalar:
function someFunction(MyEnum $enumObject): void { // ... } $enumObject = MyEnum::getInstance(MyEnum::CONSTANT_A); someFunction($enumObject);
Compare instances:
function compareFunction(MyEnum $firstEnumObject, MyEnum $secondEnumObject): bool { return $firstEnumObject === $secondEnumObject // both variants || $firstEnumObject->equals($secondEnumObject) // are identical }
Get enum instances via magic static call
/** * @method static self valueA() * @method static self valueB() */ class MyEnum extends Enum { use MagicStaticCallEnum; // use MagicStaticCallEnum trait const CONSTANT_A = 'value_a'; const CONSTANT_B = 'value_b'; } $enumObject = MyEnum::valueA(); // instead of MyEnum::getInstance(MyEnum::CONSTANT_A)
统计信息
- 总下载量: 27.3k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 2
- 点击次数: 1
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2015-10-14