## Aufzählungen (Enum)

(PHP 8 >= 8.1.0)

### Grundlagen der Aufzählungen

Aufzählungen dienen als einschränkende Schicht über Klassen und Klassenkonstanten und bieten eine Möglichkeit, eine geschlossene Menge von möglichen Werten für einen Typ zu definieren.

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

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

    do_stuff(Suit::Spades);
    ?>

Eine ausführliche Beschreibung ist im Kapitel Aufzählungen zu finden.

### Casting (Umwandlung)

Wenn ein Wert vom Typ enum in ein Objekt umgewandelt wird, wird er nicht verändert. Wenn ein Enum in ein Array umgewandelt wird, wird ein Array mit einem einzelnen Schlüssel `name` erstellt (bei Pure Enums) oder ein Array mit den beiden Schlüsseln `name` und `value` (bei Backed Enums). Alle anderen Cast-Typen führen zu einem Fehler.

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