3v4l.org

run code in 500+ PHP versions simultaneously
<?php echo '----- Backed integer enum -----'.PHP_EOL; enum DayOfWeekInt : int { case Monday = 1; case Tuesday = 2; case Wednesday = 3; case Thursday = 4; case Friday = 5; case Saturday = 6; case Sunday = 7; } $var = DayOfWeekInt::Monday; try { echo '--- intval($var) --'.PHP_EOL; echo intval($var); } catch (\Throwable $ex) { echo $ex; } echo PHP_EOL; try { echo '--- (int) $var ---'.PHP_EOL; echo (int) $var; } catch (\Throwable $ex) { echo $ex; } echo PHP_EOL; echo PHP_EOL; echo '----- Backed string enum -----'.PHP_EOL; enum DayofWeekString : string { case Monday = 'monday'; case Tuesday = 'tuesday'; case Wednesday = 'wednesday'; case Thursday = 'thursday'; case Friday = 'friday'; case Saturday = 'saturday'; case Sunday = 'sunday'; } $var = DayofWeekString::Monday; try { echo '--- strval($var) ---'.PHP_EOL; echo strval($var); } catch (\Throwable $ex) { echo $ex; } echo PHP_EOL; try { echo '--- (string) $var ---'.PHP_EOL; echo (string) $var; } catch (\Throwable $ex) { echo $ex; } echo PHP_EOL;

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.5.70.0240.00816.56
8.5.60.0360.00616.73
8.5.50.0340.00916.59
8.5.40.0360.00516.34
8.5.30.0180.00916.77
8.5.20.0310.01216.79
8.5.10.0290.01216.89
8.5.00.0050.00316.84
8.4.220.0120.00719.66
8.4.210.0310.00619.66
8.4.200.0320.01219.73
8.4.190.0320.01119.63
8.4.180.0160.01019.51
8.4.170.0320.01019.70
8.4.160.0340.01019.61
8.4.150.0340.01419.61
8.4.140.0220.00517.74
8.4.130.0150.00517.88
8.4.120.0180.00417.77
8.4.110.0180.00517.77
8.4.100.0160.00717.66
8.4.90.0280.01017.83
8.4.80.0140.00917.94
8.4.70.0150.00417.84
8.4.60.0220.01117.99
8.4.50.0280.00917.75
8.4.40.0220.00517.85
8.4.30.0200.00417.71
8.4.20.0170.00417.86
8.4.10.0180.00317.86
8.3.310.0140.00518.54
8.3.300.0140.00618.21
8.3.290.0200.00918.48
8.3.280.0170.00718.28
8.3.270.0170.00416.68
8.3.260.0130.00716.56
8.3.250.0130.00416.69
8.3.240.0310.00416.89
8.3.230.0220.00516.54
8.3.220.0240.00916.77
8.3.210.0250.00616.83
8.3.200.0190.00616.70
8.3.190.0180.00216.73
8.3.180.0120.00716.87
8.3.170.0270.00516.77
8.3.160.0350.01216.88
8.3.150.0230.00616.74
8.3.140.0150.00716.74
8.3.130.0140.00416.75
8.3.120.0240.00718.30
8.3.110.0200.00616.55
8.3.100.0230.00216.64
8.3.90.0180.00316.45
8.3.80.0160.00516.71
8.3.70.0160.00516.81
8.3.60.0190.00616.78
8.3.50.0120.00416.71
8.3.40.0170.00117.95
8.3.30.0190.00717.89
8.3.20.0230.00917.74
8.3.10.0120.00318.10
8.3.00.0100.00617.80
8.2.310.0050.00618.08

preferences:
63.18 ms | 784 KiB | 5 Q