(PHP 8 >= 8.1.0)
Перечисления или "Enums" позволяют разработчику определять настраиваемый тип, который ограничен одним из дискретного числа возможных значений. Это может быть особенно полезно при определении модели предметной области, поскольку позволяет "сделать неверные состояния недопустимыми".
Перечисления представлены во многих языках программирования с множеством различных функций. В PHP перечисления - это особый вид объектов. Сами перечисления являются классами и все его возможные случаи являются объектами одного экземпляра этого класса. Это означает, что варианты перечисления являются допустимыми объектами и могут использоваться везде, где можно использовать объект, включая проверки типов.
Самым популярным примером перечислений является встроенный логический тип,
который представляет собой перечислимый тип с допустимыми значениями true
и false
.
Перечисления позволяют разработчикам определять свои собственные произвольно надёжные перечисления.