(PHP 8 >= 8.1.0)
Numaralandırmalar (veya tür adı olarak "enum") tanımlamalarda, olası değer kümelerinden biriyle sınırlanabilen özel bir veri türünü kullanabilmeyi sağlar. Bu, "geçersiz durumların devredışı bırakılmasını" sağladığından, bir etki alanı modeli tanımlarken özellikle yararlı olabilir.
Numaralandırmalar çoğu yazılım dilinde çok çeşitli farklı özelliklerle
yer almaktadır. PHP'de ise, enum
özel bir nesne
çeşididir. Kendisi bir sınıf olup içeriği kılıflar (case) bu sınıfın tekil
olarak örneklenmiş nesneleridir. Yani, bir numaralandırma kılıfı (enum
case) geçerli bir nesne olup, tür sınamaları dahil, bir nesnenin
kullanılabildiği her yerde kullanılabilir.
Numaralandırmaların en bilinen örneği, true
ve false
değerlerini
(ikil) numaralı tür olarak içeren yerleşik mantıksal türdür.
Numaralandırmalar geliştiricinin kendi keyfi numaralandırmalarını
tanımlayabilmesini sağlar.