devionz / enum
Simple enum implementation for PHP prior to 8.1
Installs: 5
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/devionz/enum
README
Installation
composer require devionz/enum
Declaration
use Devionz\Enum\Enum; class Status extends Enum { private const DRAFT = 'draft'; private const PUBLISHED = 'published'; private const PENDING = 'pending'; }
Examples
function getValue(Status $status) { return $status->value; } $enum1 = Status::DRAFT(); $enum2 = Status::from('draft'); $enum3 = Status::tryFrom('draft'); echo $enum1->name; // 'DRAFT' echo $enum1->value // 'draft' echo getValue($enum1); // 'draft var_dump($enum1 === $enum2); // Returns true