列挙型の概要

列挙型(Enumerations) または Enum を使うと、 開発者は取りうる値を限定した独自の型を定義できます。 これによって、"不正な状態を表現できなくなる" ので、 ドメインモデルを定義する時に特に役立ちます。

列挙型は、多くのプログラミング言語に備わっており、 様々な異なる機能があります。 PHP では、列挙型は特別な種類のオブジェクトです。 列挙型そのものはクラスですし、そこで定義される case は全て、 そのクラスのインスタンスです。 これは、列挙型で定義される case は有効なオブジェクトであり、 型チェックを含む、オブジェクトが使えるあらゆる場所で使えるということです。

列挙型のもっとも有名な例は、組み込みの論理型(boolean) です。 これは、有効な値 truefalse を持つ列挙型です。 列挙型によって、開発者は任意の値の一覧を、 安定した形で定義できるようになります。