列挙型の基礎列挙型はクラスに似ていますし、 クラスやインターフェイス、トレイトと名前空間を共有します。 列挙型はオートローディングも可能です。 列挙型は新しい型を定義しますが、 固定の、限られた数の有効な値を持ちます。
上記の宣言によって、新しい列挙型
列挙型は、0個以上の
列挙型の case は、PHP のラベルと同じ規則に従います。 定数 のページを参照ください。
デフォルトでは、case は本質的にスカラーの値に依存していません。
つまり、
このことは、列挙型の値は決して
関連するデータのない、こうしたタイプの case を、 "Pure Case" と呼びます。 Pure Case のみを含む列挙型を、"Pure Enum" と呼びます。 全ての Pure Case は、その列挙型のインスタンスとして実装されています。 列挙型は内部的にクラスとして表現されます。
全ての case は読み取り専用のプロパティ
列挙型の名前を動的に取得している場合、 case の存在を確認したり、読み取る用途として defined や constant 関数が使えます。 しかしながら、これらの関数の利用はおすすめできません。 なぜなら、 Backed Enum で大半の用途を満たせるはずだからです。 |