Enumerations
Оновлено: 09.05.2023
Перерахування є обмежувальним шаром над класами та константами класів, призначеним для забезпечення способу визначення закритої множини можливих значень для типу.
<?php
enum Suit
{
case Hearts;
case Diamonds;
case Clubs;
case Spades;
}
function do_stuff(Suit $s)
{
// ...
}
do_stuff(Suit::Spades);
?>
Для повного обговорення див. розділ "Переліки".
Якщо зчислення перетворюється на об'єкт, воно не модифікується. Якщо зчислення перетворюється на масив, створюється масив з одним ключем name (для чистих зчислень) або масив з ключами name та value (для підкріплених зчислень). Всі інші приведення типів призведуть до помилки.