列挙型の全ての case を返す

# ReflectionEnum::getCases

(PHP 8 >= 8.1.0)

ReflectionEnum::getCases — 列挙型の全ての case を返す

### 説明

public function ReflectionEnum::getCases(): array

列挙型には、ひとつ以上の case を含めることができます。 このメソッドは、定義済みの全ての case を字句解析順 (つまり、ソースコードに現れる順) に取得します。

### パラメータ

この関数にはパラメータはありません。

### 戻り値

列挙型のリフレクションオブジェクトの配列を返します。 ひとつひとつが、列挙型の case を表します。 Pure Enum の場合、すべてのインスタンスが ReflectionEnumUnitCase になります。 Backed Enum の場合、すべてのインスタンスが 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)

### 参考

- 列挙型(Enum)
- ReflectionEnum::getCase() - 列挙型の特定の case を返す
- ReflectionEnum::isBacked() - 列挙型が Backed Enum かを調べる

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open