Aufzählungen und statische Methoden

Enums können auch statische Methoden haben. In der Enum selbst werden statische Methoden hauptsächlich für alternative Konstruktoren verwendet, z. B.:

<?php

enum Size
{
case
Small;
case
Medium;
case
Large;

public static function
fromLength(int $cm): static
{
return match(
true) {
$cm < 50 => static::Small,
$cm < 100 => static::Medium,
default => static::
Large,
};
}
}
?>

Statische Methoden können public, private oder protected sein, wobei private und protected praktisch gleichwertig sind, da Vererbung nicht erlaubt ist.

To Top