php8.5
Home/ Manual/ reflection / reflectionenum/ ReflectionEnum::getCases

ReflectionEnum::getCases

PHP function Edit on GitHub ✎

(PHP 8 >= 8.1.0)

Returns a list of all cases on an Enum

Description

ReflectionEnum::getCases(): array

An Enum may contain zero or more cases. This method retrieves all defined cases, in lexical order (that is, the order they appear in the source code).

Parameters Parameters

Return Values

An array of Enum reflection objects, one for each case in the Enum. For a Unit Enum, they will all be instances of ReflectionEnumUnitCase. For a Backed Enum, they will all be instances of ReflectionEnumBackedCase.

Examples

ReflectionEnum::getCases example

php
<?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());
}
?>

The above example will output:

output
enum(Suit::Hearts)
enum(Suit::Diamonds)
enum(Suit::Clubs)
enum(Suit::Spades)

See Also

Source: reference/reflection/reflectionenum/getcases.xml · from the official PHP manual (php/doc-en)