3v4l.org

run code in 300+ PHP versions simultaneously
<?php error_reporting(0); $amount = 50000; $start = microtime(true); $alreadyOutput = array(); $iterator = $amount; while ($iterator --) { $num = rand(0, $amount); if(in_array($num, $alreadyOutput)){ continue; } $alreadyOutput[] = $num; } echo "in_array: ".(microtime(true) - $start)."ms || "; unset($alreadyOutput); $alreadyOutput = array(); $start2 = microtime(true); $iterator = $amount; while ($iterator --) { $num = rand(0, $amount); if(isset($alreadyOutput[$num])){ continue; } $alreadyOutput[$num] = true; } echo "by key: ".(microtime(true) - $start2)."ms";

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)
7.2.00.0200.92220.99
7.1.70.0030.86319.21
7.1.60.0130.88919.46
7.1.50.0000.93218.84
7.1.00.0100.99324.24
7.0.200.1540.98517.00
7.0.140.0001.00024.09
7.0.60.0000.97722.18
7.0.50.0100.98019.93
7.0.40.0070.90020.21
7.0.30.0300.94720.21
7.0.20.0231.10720.18
7.0.10.0230.89020.10
7.0.00.0070.87020.08
5.6.280.0032.49723.64
5.6.210.0072.49323.10
5.6.200.0102.49020.69
5.6.190.0102.49023.07
5.6.180.0172.48323.07
5.6.170.0232.47722.86
5.6.160.0072.49322.85
5.6.150.0072.49320.73
5.6.140.0172.48320.71
5.6.130.0102.49020.66
5.6.120.0032.49723.59
5.6.110.0072.49323.59
5.6.100.0132.48723.54
5.6.90.0072.49323.59
5.6.80.0202.48022.95
5.6.70.3602.14023.10
5.5.350.0072.49323.04
5.5.340.0132.48720.43
5.5.330.0072.49322.52
5.5.320.0432.45722.73
5.5.310.0232.47722.62
5.5.300.0102.49020.45
5.5.290.0032.49720.55
5.5.280.0032.49723.34
5.5.270.0102.49023.44
5.5.260.0002.50023.44
5.5.250.0102.49023.07
5.5.240.0132.48722.84
5.4.450.0472.45021.64
5.4.440.3802.11721.73
5.4.430.0172.48321.95
5.4.420.0272.47021.75
5.4.410.0232.47321.49
5.4.400.0302.46721.31
5.4.390.4032.09321.67
5.4.380.0232.47321.30
5.4.370.0272.47021.59
5.4.360.0332.46321.74
5.4.350.0272.47021.74
5.4.340.0002.49721.56
5.4.320.0171.98514.58
5.4.310.0081.99514.60
5.4.300.0101.99214.59
5.4.290.0131.99114.61
5.4.280.0081.99314.50
5.4.270.0101.99214.53
5.4.260.0091.99214.51
5.4.250.0151.98614.52
5.4.240.0101.99114.54
5.4.230.0151.98614.52
5.4.220.0111.99014.54
5.4.210.0111.98914.52
5.4.200.0151.98714.52
5.4.190.0101.99114.52
5.4.180.0081.99314.52
5.4.170.0101.99614.52
5.4.160.0392.13614.32
5.4.150.0971.90514.34
5.4.140.0271.99114.00
5.4.130.0421.97214.12
5.4.120.0111.99314.10
5.4.110.0151.99014.08
5.4.100.0211.98214.11
5.4.90.0181.98514.08
5.4.80.0211.97614.04
5.4.70.0301.97014.09
5.4.60.0191.98414.05
5.4.50.0301.98614.04
5.4.40.0321.97914.05
5.4.30.0091.99214.07
5.4.20.0091.99414.09
5.4.10.0091.99614.08
5.4.00.0111.99013.61

preferences:
32.95 ms | 401 KiB | 5 Q