sunkan / enum
枚举类
1.6.0
2024-02-20 14:58 UTC
Requires
- php: ^8.0.0
- ext-json: *
Requires (Dev)
- phpstan/phpstan: ^1.10
- phpunit/phpunit: ^9.0
README
安装
composer require sunkan/enum
声明
use Sunkan\Enum\Enum; /** * Action enum */ class Action extends Enum { private const VIEW = 'view'; private const EDIT = 'edit'; }
使用
$action = Action::fromValue('view'); // or $action = Action::VIEW();
如您所见,静态方法被自动实现,以提供对枚举值的快速访问。
使用枚举类的一个优点是可以对枚举值进行类型提示
function setAction(Action $action) { // ... }
文档
__toString()
您可以echo $myValue
,它将显示枚举值(常量的值)getValue()
返回枚举的当前值getKey()
返回枚举当前值的键is()
测试枚举实例是否相等(如果枚举值相等则返回true
,否则返回false
)
静态方法
fromValue()
命名构造函数检查该值是否存在于枚举中toArray()
方法返回所有可能的值作为数组(键为常量名称,值为常量值)keys()
返回 Enum 类中所有常量的名称(键)values()
返回所有 Enum 常量的 Enum 类实例(键为常量名称,值为 Enum 实例)isValid()
检查测试的值是否在枚举集中有效isValidKey()
检查测试的键是否在枚举集中有效search()
返回搜索值的键