yungts97 / enum-helpers
This is a package that provided some helper functions for PHP Enumeration.
Installs: 671
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/yungts97/enum-helpers
Requires
- php: ^8.1
Requires (Dev)
- phpunit/phpunit: ^9.5
README
yungts97/enum-helpers
is a PHP package that extended functionality of the PHP Enumeration.
📦 Environment Requirements
PHP
: ^8.1
🚀 Installation
You can install the package via composer:
composer require yungts97/enum-helpers
✨ How to use?
This package is very simple and easy to use. To extend the features of enum. You can add the trait in your enum.
use Yungts97\EnumHelpers\Traits\Invokable; use Yungts97\EnumHelpers\Traits\Contains; use Yungts97\EnumHelpers\Traits\Random; enum Status: string { use Invokable, Contains, Random; // add it here case Draft = 'draft'; case Submitted = 'submitted'; case Pending = 'pending'; case Approved = 'approved'; case Rejected = 'rejected'; }
1. Invokable
This trait allows Enum to be invokable.
Status::Pending() // "pending"
2. Contains
This trait allows checking whether the value exists in Enum. Agrument accepted UnitEnum
, BackedEnum
, String
and Int
.
Status::contains('pending') // true Status::contains(Status::Draft) // true Status::contains(Status::Refund) // false
3. Random
This trait allows Enum to return random value(s).
Status::random() // Status::Draft Status::random(1) // Status::Draft Status::random(2) // [Status::Draft, Status::Approved]
📃 License
The MIT License (MIT). Please see License File for more information.