(PHP 8 >= 8.1.0)
Las enumeraciónes, o "Enums", permiten a un desarrollador definir un tipo personalizado que está limitado a uno de un número discreto de valores posibles. Esto puede ser especialmente útil al definir un modelo de dominio, ya que permite "hacer que los estados inválidos sean irrepresentables".
Enums aparecen en muchos lenguajes con una variedad de características diferentes. En PHP, Enums son un tipo especial de objeto. El Enum en sí es una clase, y sus posibles casos son todos una instancia de esa clase. Eso significa que los casos de Enum son objetos válidos y pueden usarse en cualquier lugar donde se pueda usar un objeto, incluidas las comprobaciones de tipo.
El ejemplo más popular de enumeraciónes es el tipo booleano incorporado, que es un
tipo enumerado con valores legales true
y false
.
Los Enums permiten a los desarrolladores definir sus propias enumeraciónes arbitrariamente robustas.