CascadiaPHP 2024

A interface UnitEnum

(PHP 8 >= 8.1.0)

Introdução

A interface UnitEnum é aplicada automaticamente a todas as enumerações pelo motor do PHP. Não pode ser implementada por classes definidas pelo usuário. Enumerações não podem substituir seus métodos, já que implementações padrão são fornecidas pelo motor. Está disponível apenas para verificações de tipo.

Resumo da Interface

interface UnitEnum {
/* Métodos */
public static cases(): array
}

Índice

add a note

User Contributed Notes 2 notes

up
0
KhaledChebat at hotmail dot com
7 days ago
Example provided has a small typo.

It states 'case()' where the correct method is 'cases()'.
up
-4
leonardosahon at gmail dot com (Osahenrumwen A)
10 months ago
When looping through cases, you will need to access the values as an object and not an array, like this:

<?php

enum BlogStatus : string {
case
Published = "is_published";
case
Draft = "is_draft";
case
Scheduled = "is_scheduled";
}

foreach (
BlogStatus::case() as $datum){
echo
$datum->name . '<br />'; // Published || Draft || Scheduled
echo $datum->value . '<br />'; // is_publised || is_draft || is_scheduled
}

?>
To Top