putraits / enums
ProjectICKX PHP utility traits for enum
1.0.0
2024-03-07 09:37 UTC
Requires
- php: >=8.1.0
- ext-mbstring: *
Requires (Dev)
- friendsofphp/php-cs-fixer: ~3.21.0
- phpunit/phpunit: ~10.0.0
This package is not auto-updated.
Last update: 2024-11-15 11:09:50 UTC
README
このライブラリは列挙型をより快適に扱うための特性ライブラリです。
利用にあたっての最小バージョンはPHP 8.1.0からになります。
NameFrom特性
NameFromTrait
を使用することで、name
からEnumインスタンス
を簡単に引けるようにします。
なお、PHP8.3からは TestSuitBackedEnum::{'Hearts'}
とした形式でもアクセスできるようになります。
sample
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)