Las enumeraciones

(PHP 8 >= 8.1.0)

Las enumeraciones básicas

Las enumeraciones constituyen una capa restrictiva sobre las clases y las constantes de clase. Permiten definir un conjunto cerrado de valores posibles para un tipo.

<?php
enum Suit
{
case
Hearts;
case
Diamonds;
case
Clubs;
case
Spades;
}

function
do_stuff(Suit $s)
{
// ...
}

do_stuff(Suit::Spades);
?>

Para una descripción completa, ver el capítulo sobre las enumeraciones.

Conversión

Si una enum es convertida en object, no es modificada. Si una enum es convertida en array, un array con una sola clave name (para las Pure enums) o un array con las claves name y value (para las Backed enums) es creado. Todos los otros tipos de conversión resultarán en un error.