PHPackages                             mattyeend/dynamic-enum-generator - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. mattyeend/dynamic-enum-generator

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

mattyeend/dynamic-enum-generator
================================

Automatically generate PHP enums from database columns in Laravel.

v1.1.6(2mo ago)11MITPHPPHP &gt;=8.1

Since Aug 29Pushed 2mo agoCompare

[ Source](https://github.com/MatthewYeend/DynamicEnumGenerator)[ Packagist](https://packagist.org/packages/mattyeend/dynamic-enum-generator)[ Fund](https://www.buymeacoffee.com/mattyeend)[ GitHub Sponsors](https://github.com/MattYeend)[ RSS](/packages/mattyeend-dynamic-enum-generator/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (5)Dependencies (4)Versions (7)Used By (0)

Dynamic Enum Generator
======================

[](#dynamic-enum-generator)

A Laravel package to automatically generate PHP enums from database columns.

---

Installation
------------

[](#installation)

```
composer require mattyeend/dynamic-enum-generator
```

This package supports Laravel 10, 11, and 12.

Laravel will auto-discover the service provider.

---

Usage
-----

[](#usage)

Generate an enum from a specific table and column:

```
php artisan enum:generate --table=users --column=status
```

---

Options
-------

[](#options)

- `--table`: The database table name.
- `--column`: The column name to generate the enum from.
- `--path`: Path where enums are saved (default: `app/Enums`).

---

Example
-------

[](#example)

Suppose you have a `users` table with a `status` column containing:

- `active`
- `inactive`
- `pending`

Running:

```
php artisan enum:generate --table=users --column=status
```

Generates `app/Enums/Status.php`:

```
