(PHP 8 >= 8.1.0)
ReflectionEnum::getCases — Возвращает список вариантов перечисления
Перечисление содержит ноль или больше вариантов. Метод извлекает варианты перечисления в лексическом порядке — в котором варианты появляются в исходном коде.
У этой функции нет параметров.
Метод возвращает массив Reflection-объектов перечисления, по одному для каждого варианта перечисления. В простых перечислениях каждый вариант будет экземпляром класса ReflectionEnumUnitCase. В типизированных перечислениях каждый вариант будет экземпляром класса ReflectionEnumBackedCase.
Пример #1 Пример использования метода ReflectionEnum::getCases()
<?php
enum Suit
{
case Hearts;
case Diamonds;
case Clubs;
case Spades;
}
$rEnum = new ReflectionEnum(Suit::class);
$cases = $rEnum->getCases();
foreach ($cases as $rCase) {
var_dump($rCase->getValue());
}
?>
Результат выполнения приведённого примера:
enum(Suit::Hearts) enum(Suit::Diamonds) enum(Suit::Clubs) enum(Suit::Spades)