Enumerations
(PHP 8 >= 8.1.0)
Enumerações Básicas
Enumerations são uma camada de restrição sobre classes e constantes de classe, destinadas a fornecer uma maneira de definir um conjunto fechado de valores possíveis para um tipo.
<?php
enum Suit
{
case Hearts;
case Diamonds;
case Clubs;
case Spades;
}
function do_stuff(Suit $s)
{
// ...
}
do_stuff(Suit::Spades);
?>
Para uma discussão completa, consulte o capítulo Enumerations.
Casting
Se um enum for convertido em um object, ele não será
modificado. Se um enum for convertido em um array,
será criado um array com uma única chave de name
(para enumerations puras) ou
um array com chaves name
e value
(para enumerations com backup). Todos os outros tipos de conversão resultarão em erro.