emulgeator / enum
一个非常简单的库,允许您在PHP中定义枚举
1.0.1
2022-01-27 20:32 UTC
Requires
- php: >=7
- ext-json: *
Requires (Dev)
- phpunit/phpunit: ^9.1
This package is auto-updated.
Last update: 2024-08-28 01:55:42 UTC
README
一个非常简单的库,允许您在PHP中定义枚举
入门
安装
运行composer require emulgeator/enum
将此库作为依赖项添加到您的项目中
使用方法
只需扩展类,定义可能的值,并创建自己的构造函数
use Emul\Enum\EnumAbstract; class Status extends EnumAbstract { const ENABLED = 'enabled'; const DISABLED = 'disabled'; const DELETED = 'deleted'; public static function enabled(): self { return new self(self::ENABLED); } public static function disabled(): self { return new self(self::DISABLED); } public static function deleted(): self { return new self(self::DELETED); } protected static function getPossibleValues(): array { return [ self::ENABLED, self::DISABLED, self::DELETED, ]; } } $enabled = Status::enabled(); $disabled = Status::disabled(); $deleted = Status::createFromString('invalid'); // Throws exception $enabled->isEqualToString('disabled'); // false $enabled->isEqualTo($disabled); // false