marc-mabe/php-enum
Native PHP enum implementation via an abstract base class. Extend it to define enumerations from public constants (supports scalars, null, and arrays), create and compare enum instances, and keep a strict set of named values for safer domain modeling.
|
Package
|
Score
|
Description
|
Stars
|
Likes
|
Forks
|
Downloads
|
Issues
|
Score
|
Opportunity
|
License
|
Last Release
|
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| marc-mabe/php-enum-phpstan | 0.89 | PHPStan extension for marc-mabe/php-enum. Teaches PHPStan about enum accessor methods and allowed values so static analysis understands your enumerations and catches invalid usage. Install with Composer and include the provided extension.neon. | 12 | 13 | 6 | 17K | 0 | 2.6 | 43.1 | BSD-3-Clause | 1 year ago | |
| archtechx/enums | 0.88 | Modern PHP enum helpers: casting, validation, labels, and convenience methods for native enums. Add common patterns like options arrays, random values, and comparisons to make enums easier to use across Laravel apps and APIs. | 568 | 567 | 23 | 530K | 2 | 7.1 | 41.3 | MIT | 1 year ago | |
| bensampo/laravel-enum | 0.86 | Laravel Enum provides a powerful enum implementation for Laravel with class-constant definitions, instantiation, casting, validation, localization, bitwise/flag enums, and an artisan generator. Not recommended for new projects—use native PHP 8.1 enums. | 2,029 | 2,044 | 159 | 311K | 1 | 15.0 | 30.2 | MIT | — | |
| daverandom/enum | 0.86 | Lightweight PHP enum base class: extend a single abstract class and define members as constants. Includes static helpers to validate and resolve enum names and values. Useful for simple, shared enum functionality. | 0 | 0 | 0 | 2 | 0 | 0.3 | 6.6 | MIT | 8 years ago | |
| konekt/enum | 0.86 | Lightweight PHP enum base class (pre-PHP 8.1) for defining value-safe constants via abstract Enum subclasses. Simple instantiation, validation and utilities, with docs and optional Laravel Eloquent integration via konekt/enum-eloquent. | 21 | 21 | 2 | 61K | 0 | 0.0 | 55.3 | MIT | — | |
| paillechat/php-enum | 0.85 | PHP 7+ enum library: define enums by extending Enum and declaring constants, then instantiate via static named calls (IssueType::ONE()). Instances are strict-equal singletons, work with in_array/type hints, and can convert to/from names. | 16 | 17 | 3 | 468 | 0 | 2.0 | 20.1 | MIT | 7 years ago | |
| spatie/enum | 0.85 | Obsolete: PHP 8.1+ has native enums (recommended). Spatie Enum provides strongly typed, object-based enums for older PHP versions, enabling IDE-friendly static analysis and refactoring. Define enums via @method annotations and call StatusEnum::draft(). | 847 | 850 | 67 | 1M | 0 | 15.2 | 42.9 | MIT | 4 years ago | |
| spatie/laravel-enum | 0.82 | Laravel integration for spatie/enum: use Enum base class in Laravel, cast model attributes to enums (including nullable and arrays), and get Laravel-friendly behavior via custom casts and Castable support for Eloquent. | 365 | 368 | 36 | 118K | 0 | 11.3 | 34.7 | MIT | 1 year ago | |
| myclabs/php-enum | 0.81 | myclabs/php-enum brings SplEnum-style enums to PHP. Define enum classes, get autogenerated static constructors, validate values, compare instances, list possible values, and use enums as parameter/return types with extra methods—without a PHP extension. | 2,728 | 2,762 | 126 | 3M | 12 | 30.2 | 45.6 | MIT | 1 year ago |
How can I help you explore Laravel packages today?