3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Request {} class Route {} // Before: docs only: array|string|\Stringable|null /* interface FooInterface { public function getTitle(Request $request, Route $route); } */ // If we use native typehints instead interface FooInterface { public function getTitle(Request $request, Route $route): null|array|string|\Stringable; } // This is an implementation written against the original, i.e. with no return types specified. We should not break it. class SomeFoo implements FooInterface { public function getTitle(Request $request, Route $route) { return 'yay'; } } $test = new SomeFoo(); var_dump($test->getTitle(new Request(), new Route()));

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.3.70.0000.01516.88
8.3.60.0070.01018.31
8.3.50.0180.00318.66
8.3.40.0130.00720.17
8.3.30.0120.00318.51
8.3.20.0040.00424.18
8.3.10.0060.00324.66
8.3.00.0080.00026.16
8.2.190.0070.00718.30
8.2.180.0120.00325.92
8.2.170.0120.00318.67
8.2.160.0100.00322.96
8.2.150.0070.00025.66
8.2.140.0080.00024.66
8.2.130.0080.00026.16
8.2.120.0040.00426.16
8.2.110.0070.00422.20
8.2.100.0080.00317.91
8.2.90.0000.00817.50
8.2.80.0000.00818.78
8.2.70.0030.00617.63
8.2.60.0000.00817.63
8.2.50.0060.00318.04
8.2.40.0070.00018.16
8.2.30.0060.00318.00
8.2.20.0000.00719.18
8.2.10.0040.00417.88
8.2.00.0040.00419.19
8.1.280.0110.00425.92
8.1.270.0060.00324.66
8.1.260.0050.00226.35
8.1.250.0080.00028.09
8.1.240.0030.00623.85
8.1.230.0040.00722.66
8.1.220.0000.00818.51
8.1.210.0040.00418.77
8.1.200.0000.00917.36
8.1.190.0030.00517.22
8.1.180.0000.00818.10
8.1.170.0040.00417.62
8.1.160.0070.00018.88
8.1.150.0000.00818.50
8.1.140.0000.00717.39
8.1.130.0070.00018.95
8.1.120.0040.00417.32
8.1.110.0000.00717.38
8.1.100.0110.00517.31
8.1.90.0090.00717.36
8.1.80.0120.00417.29
8.1.70.0100.00517.29
8.1.60.0100.00617.47
8.1.50.0130.00217.37
8.1.40.0100.00517.43
8.1.30.0110.00417.49
8.1.20.0080.00617.52
8.1.10.0070.00917.28
8.1.00.0060.01117.25
8.0.300.0040.00420.42
8.0.290.0000.00916.63
8.0.280.0040.00418.32
8.0.270.0000.00716.82
8.0.260.0040.00418.43
8.0.250.0030.00317.02
8.0.240.0030.00317.02
8.0.230.0030.01216.76
8.0.220.0090.00716.83
8.0.210.0060.00716.83
8.0.200.0050.00816.91
8.0.190.0060.00616.84
8.0.180.0110.00416.88
8.0.170.0110.00416.89
8.0.160.0140.00116.72
8.0.150.0090.00616.79
8.0.140.0120.00416.74
8.0.130.0140.00216.79
8.0.120.0130.00316.92
8.0.110.0110.00316.81
8.0.100.0080.00716.85
8.0.90.0090.00616.83
8.0.80.0130.00316.81
8.0.70.0090.00916.78
8.0.60.0080.00516.76
8.0.50.0150.00016.80
8.0.30.0110.00316.86
8.0.20.0080.00616.91
8.0.10.0110.00416.93
7.4.330.0000.00415.55
7.4.320.0040.00416.36
7.4.300.0050.00916.32
7.4.290.0110.00416.41
7.4.280.0170.00016.41
7.4.270.0140.00316.46
7.4.260.0100.00616.41
7.4.250.0120.00316.40
7.4.240.0090.00616.34
7.4.230.0100.00716.38
7.4.220.0050.00916.21
7.4.210.0070.00716.21
7.4.200.0040.00816.12
7.4.190.0100.00216.21
7.4.180.0130.00016.40
7.4.160.0090.00316.32
7.4.150.0080.00516.37
7.4.140.0060.00616.21
7.4.130.0110.00316.08
7.4.120.0110.00316.21
7.4.110.0080.00416.21
7.4.100.0070.00716.39
7.4.90.0100.00316.09
7.4.80.0100.00216.17
7.4.70.0080.00716.23
7.4.60.0110.00516.23
7.4.50.0110.00416.10
7.4.40.0130.00116.24
7.4.30.0080.00616.17
7.4.20.0110.00416.09
7.4.10.0110.00416.22
7.4.00.0120.00216.25

preferences:
40.37 ms | 401 KiB | 5 Q