PHP 8.4.0 RC4 available for testing

ReflectionEnum::getCases

(PHP 8 >= 8.1.0)

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

説明

public 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)

参考

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top