PHPCon Poland 2024

The UnitEnum interface

(PHP 8 >= 8.1.0)


The UnitEnum interface is automatically applied to all enumerations by the engine. It may not be implemented by user-defined classes. Enumerations may not override its methods, as default implementations are provided by the engine. It is available only for type checks.

Sinopsis de la Interfaz

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

Tabla de contenidos

add a note

User Contributed Notes 1 note

leonardosahon at gmail dot com (Osahenrumwen A)
9 months ago
When looping through cases, you will need to access the values as an object and not an array, like this:


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

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

To Top