3v4l.org

run code in 300+ PHP versions simultaneously
<?php enum Colour { case Red; case Blue; case Green; public static function fromCaseName (string $name): ?self { $cases = self::cases(); foreach ($cases as $selCase) { if ($selCase->name === $name) { return $selCase; } } return null; } public function toRgb () { return match ($this) { self::Red => "255, 0, 0", self::Blue => "0, 255, 0", self::Green => "0, 0, 255" }; } public function toHex () { return match ($this) { self::Red => "#ff0000", self::Blue => "#00ff00", self::Green => "#0000ff" }; } public function toCmyk () { return match ($this) { self::Red => "0% 100% 100% 0%", self::Blue => "100% 0% 100% 0%", self::Green => "100% 100% 0% 0%" }; } } var_dump(Colour::Red); var_dump(Colour::Red->toRgb()); var_dump(Colour::Red->toHex()); var_dump(Colour::Red->toCmyk()); var_dump(Colour::fromCaseName('Red')); var_dump(Colour::fromCaseName('Red')->toRgb());

Here you find the average performance (time & memory) of each version. A grayed out version indicates it didn't complete successfully (based on exit-code).

VersionSystem time (s)User time (s)Memory (MiB)
8.4.120.0050.00424.33
8.4.110.0110.00718.84
8.4.100.0120.00718.73
8.4.90.0080.00920.70
8.4.80.0090.01120.56
8.4.70.0030.00518.03
8.4.60.0110.00918.90
8.4.50.0120.00818.68
8.4.40.0100.01017.78
8.4.30.0090.01018.92
8.4.20.0130.00717.79
8.4.10.0040.00419.61
8.3.250.0110.00818.92
8.3.240.0050.00317.10
8.3.230.0070.00116.73
8.3.220.0120.00619.03
8.3.210.0100.00916.75
8.3.200.0030.00516.41
8.3.190.0120.00618.80
8.3.180.0160.00217.06
8.3.170.0000.00819.11
8.3.160.0120.00618.25
8.3.150.0200.00019.22
8.3.140.0060.01216.80
8.3.130.0100.00018.37
8.3.120.0030.00619.04
8.3.110.0040.00422.58
8.3.100.0060.00322.58
8.3.90.0000.00822.58
8.3.50.0090.00022.58
8.3.30.0130.00722.96
8.2.290.0030.00420.63
8.2.280.0130.00618.32
8.2.270.0080.01117.53
8.2.260.0040.00416.68
8.2.250.0040.00416.84
8.2.240.0060.00317.17
8.2.230.0080.00022.58
8.2.220.0170.00022.58
8.2.210.0030.00622.58
8.1.330.0100.00922.02
8.1.320.0110.00517.96
8.1.310.0120.00616.16
8.1.300.0030.00620.13

preferences:
45.21 ms | 403 KiB | 5 Q