## Перечисления

(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 перечисление не изменяется. При преобразовании типа enum в тип array создаётся массив с одним ключом `name` для чистых перечислений или массив с двумя ключами `name` и `value` для типизированных перечислений. Остальные приведения типов вызовут ошибку.

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