## 列挙型 / Enum

(PHP 8 >= 8.1.0)

### 列挙型の基礎

列挙型は、クラスやクラス定数に対して、さらに制限を加えたものです。 ある型に対して、取り得る値の限られた集合を定義する方法を提供します。

    <?php
    enum Suit
    {
        case Hearts;
        case Diamonds;
        case Clubs;
        case Spades;
    }

    function do_stuff(Suit $s)
    {
        // ...
    }

    do_stuff(Suit::Spades);
    ?>

完全な説明は、 列挙型(Enum) を参照ください。

### キャスト

列挙型を object にキャストしても、値は変更されません。 列挙型を array にキャストすると、 `name` というキーだけ(Pure Enum の場合) をもつ配列か、 `name` と `value` というキー(Backed Enum の場合) を持つ配列が生成されます。 それ以外のキャストを行っても、エラーが発生します。

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