3v4l.org

run code in 300+ PHP versions simultaneously
<?php enum Fruits: string { case APPLE = 'apple'; case PINEAPPLE = 'pineapple'; case PLUM = 'plum'; public static function choices(): array { return array_map(fn ($case) => $case->value, static::cases()); } } var_dump(Fruits::cases()); var_dump(Fruits::choices());
Output for 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.5 - 8.3.26, 8.4.1 - 8.4.13
array(3) { [0]=> enum(Fruits::APPLE) [1]=> enum(Fruits::PINEAPPLE) [2]=> enum(Fruits::PLUM) } array(3) { [0]=> string(5) "apple" [1]=> string(9) "pineapple" [2]=> string(4) "plum" }
Output for 8.0.1 - 8.0.30
Parse error: syntax error, unexpected identifier "Fruits" in /in/pbcDT on line 3
Process exited with code 255.

preferences:
63.77 ms | 407 KiB | 5 Q