putraits/enums

ProjectICKX PHP工具类特性用于枚举

1.0.0 2024-03-07 09:37 UTC

This package is not auto-updated.

Last update: 2024-09-20 10:29:21 UTC


README

这个库是一个用于更方便处理枚举的特性库。

使用该库的最小PHP版本为8.1.0。

NameFrom特性

通过使用NameFromTrait,可以轻松地从name获取到Enum实例

此外,从PHP 8.3开始,也可以使用TestSuitBackedEnum::{'Hearts'}的形式进行访问。

示例

use putraits\enums\traits\NameFrom\NameFromInterface;
use putraits\enums\traits\NameFrom\NameFromTrait;

enum TestSuitBackedEnum: string implements NameFromInterface
{
    use NameFromTrait;

    case Hearts   = 'H';
    case Diamonds = 'D';
    case Clubs    = 'C';
    case Spades   = 'S';
}

var_dump(TestSuitBackedEnum::tryNameFrom('Hearts')); // enum(TestSuitBackedEnum::Hearts)