« ReflectionEnum::getCase
ReflectionEnum::hasCase »

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)

参考

関連キーワード:
case   ReflectionEnum   列挙型   Suit   getCases   enum   Enum   getCase   インスタンス   Backed   Hearts   Diamonds   Clubs   Spades   rEnum   cases   rCase   hasCase   以上   字句   解析   ソースコード   リフレクション   Pure   ReflectionEnumUnitCase
関連する関数・ページ:
reflectionenum.getcase   reflectionenum.hascase   reflectionenum.isbacked   reflectionenum.getbackingtype   unitenum.cases   reflectionenumunitcase.getvalue