Con la llegada de PHP 8.1, las enumeraciones (Enums) son ahora una característica nativa del lenguaje.

El paquete archtechx/enums expande estas capacidades y hace que trabajar con enums sea más fácil y práctico.

¿Qué ofrece este paquete?

Este paquete agrega varias mejoras a los enums en PHP mediante traits:

Invocación directa – Permite obtener el valor de un enum con ().
Nombres – Retorna una lista de los nombres de los casos del enum.
Valores – Retorna una lista de los valores de los casos del enum.
Opciones – Devuelve un array asociativo de nombres y valores.

Ejemplos de uso

Obtener valores de Enum con ()

use ArchTechEnumsInvokableCases;

enum TaskStatus: int {
    use InvokableCases;

    case INCOMPLETE = 0;
    case COMPLETED = 1;
    case CANCELED = 2;
}

TaskStatus::INCOMPLETE(); // 0
TaskStatus::COMPLETED(); // 1
TaskStatus::CANCELED(); // 2

Obtener los nombres de los casos

use ArchTechEnumsNames;

enum TaskStatus: int {
    use Names;

    case INCOMPLETE = 0;
    case COMPLETED = 1;
    case CANCELED = 2;
}

TaskStatus::names(); 
// ['INCOMPLETE', 'COMPLETED', 'CANCELED']

Obtener los valores de los casos

use ArchTechEnumsValues;

enum TaskStatus: int {
    use Values;

    case INCOMPLETE = 0;
    case COMPLETED = 1;
    case CANCELED = 2;
}

TaskStatus::values(); 
// [0, 1, 2]

Obtener opciones en un array asociativo

use ArchTechEnumsOptions;

enum TaskStatus: int {
    use Options;

    case INCOMPLETE = 0;
    case COMPLETED = 1;
    case CANCELED = 2;
}

TaskStatus::options(); 
// ['INCOMPLETE' => 0, 'COMPLETED' => 1, 'CANCELED' => 2]

Este paquete facilita el trabajo con enumeraciones en PHP! Puedes encontrar más detalles en su repositorio en GitHub.

Pablo, Técnico en Sistemas Informáticos y Redes

Compartir
Publicado por
Pablo, Técnico en Sistemas Informáticos y Redes
Etiquetas: FrameworkLaravelPHP

Entradas recientes

Juegos Gratis de Epic Games hasta el 20 de noviembre: ScourgeBringer, Songs of Silence y Zero Hour

Si eres un amante de los videojuegos, estás de suerte. Hasta el 20 de noviembre…

1 hora hace

Premio Nobel se une a Bigtechs para trabajar en construir Computadoras Cuánticas personales

La computación cuántica acaba de dar un salto gigante. John M. Martinis, recién galardonado con…

3 horas hace

La biografía de Steve Jobs escrita por el biógrafo Walter Isaacson

La biografía más vendida del cofundador de Apple, Steve Jobs; escrita por uno de los…

2 días hace

Cómo la Inteligencia Artificial está Revolucionando los Sistemas de Seguridad en el Hogar

Hubo un tiempo en el que la “seguridad en el hogar” significaba confiar en un…

2 días hace

Elon Musk se asegura una compensación de 1 billón de dólares con Tesla

Elon Musk vuelve a romper todos los esquemas. Los accionistas de Tesla acaban de aprobar…

2 días hace

GTA 6 se retrasa hasta finales de 2026

Los fans de Grand Theft Auto tendrán que esperar un poco más para volver a…

5 días hace