3v4l.org

run code in 300+ PHP versions simultaneously
<?php declare(strict_types=1); enum ImageBoardDomains: string { case Dvach = 'ru'; case Sosach = 'so'; case Harkach = 'hk'; } abstract class ImageBoard { abstract public function getDomain(): string; } class Dvach extends ImageBoard { public function getDomain(): string { return ImageBoardDomains::Dvach->value; } } class Sosach extends ImageBoard { public function getDomain(): string { return ImageBoardDomains::Sosach->value; } } class Harkach extends ImageBoard { public function getDomain(): string { return ImageBoardDomains::Harkach->value; } } print_r(ImageBoardDomains::cases());
Output for 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.25, 8.4.1 - 8.4.12
Array ( [0] => ImageBoardDomains Enum:string ( [name] => Dvach [value] => ru ) [1] => ImageBoardDomains Enum:string ( [name] => Sosach [value] => so ) [2] => ImageBoardDomains Enum:string ( [name] => Harkach [value] => hk ) )

preferences:
56.1 ms | 407 KiB | 5 Q