枚舉概覽

(PHP 8 >= 8.1.0)

枚舉,或稱 “Enum”,能夠讓開發(fā)者自定義類型為一系列可能的離散值中的一個。 在定義領(lǐng)域模型中很有用,它能夠“隔離無效狀態(tài)”(making invalid states unrepresentable)。

枚舉以各種不同功能的形式出現(xiàn)在諸多語言中。 在 PHP 中, 枚舉是一種特殊類型的對象。Enum 本身是一個類(Class), 它的各種條目(case)是這個類的單例對象,意味著也是個有效對象 —— 包括類型的檢測,能用對象的地方,也可以用它。

最常見的枚舉例子是內(nèi)置的 boolean 類型, 該枚舉類型有兩個有效值 truefalse。 Enum 使開發(fā)者能夠任意定義出用戶自己的、足夠健壯的枚舉。