3v4l.org

run code in 300+ PHP versions simultaneously
<?php $A = [1, -2, 5, -9, 9]; $X = -2; $s = solution($A, $X); var_dump($s, array_search($X, $A)); function solution($A, $X) { sort($A); $N = sizeof($A); if ($N == 0) { return -1; } $l = 0; $r = $N - 1; while ($l < $r && $X !== $A[$l] ) { $m = (int)(($l + $r) / 2); if ($A[$m] > $X) { $r = $m - 1; } else { $l = $m; } } if ($A[$l] == $X) { return $l; } else return -1; }

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.60.0171.98518.30
8.3.50.0171.98521.14
8.3.40.0071.99718.71
8.3.30.0071.99720.40
8.3.20.0071.99720.38
8.3.10.0031.99821.27
8.3.00.0002.00322.52
8.2.180.0101.99416.50
8.2.170.0101.99222.96
8.2.160.0031.99822.21
8.2.150.0032.00024.18
8.2.140.0002.00224.66
8.2.130.0031.99926.16
8.2.120.0071.99420.76
8.2.110.0101.99121.12
8.2.100.0031.99817.78
8.2.90.0031.99819.26
8.2.80.0002.00517.97
8.2.70.0032.00017.50
8.2.60.0002.00417.93
8.2.50.0002.00418.10
8.2.40.0031.99520.51
8.2.30.0031.99819.43
8.2.20.0031.99917.70
8.2.10.0032.00217.82
8.2.00.0101.99417.79
8.1.280.0002.00425.92
8.1.270.0032.00123.99
8.1.260.0071.99726.35
8.1.250.0071.99428.09
8.1.240.0002.00323.88
8.1.230.0072.00617.77
8.1.220.0032.00017.74
8.1.210.0032.00018.77
8.1.200.0031.99617.38
8.1.190.0031.99917.23
8.1.180.0071.99418.10
8.1.170.0002.00118.48
8.1.160.0031.99922.17
8.1.150.0031.99718.67
8.1.140.0031.99817.39
8.1.130.0002.00317.91
8.1.120.0032.00017.51
8.1.110.0032.00117.42
8.1.100.0031.99917.50
8.1.90.0002.00217.53
8.1.80.0031.99817.53
8.1.70.0002.00317.52
8.1.60.0071.99717.54
8.1.50.0071.99517.59
8.1.40.0071.99517.47
8.1.30.0071.99517.52
8.1.20.0101.98917.58
8.1.10.0032.00117.66
8.1.00.0002.00217.47
8.0.300.0032.00218.77
8.0.290.0031.99916.63
8.0.280.0002.00918.38
8.0.270.0002.00317.16
8.0.260.0002.00116.82
8.0.250.0002.00216.89
8.0.240.0031.99916.88
8.0.230.0002.00216.88
8.0.220.0002.00216.85
8.0.210.0002.00316.78
8.0.200.0032.00016.84
8.0.190.0101.99116.81
8.0.180.0071.99516.88
8.0.170.0032.00116.91
8.0.160.0071.99616.81
8.0.150.0031.99816.80
8.0.140.0031.99816.70
8.0.130.0002.00113.32
8.0.120.0032.00016.83
8.0.110.0002.00316.68
8.0.100.0171.98716.87
8.0.90.0071.99516.66
8.0.80.0071.99116.72
8.0.70.0002.00416.66
8.0.60.0031.99916.66
8.0.50.0071.99616.67
8.0.30.0161.99316.95
8.0.20.0181.98217.40
8.0.10.0031.99917.01
8.0.00.0131.98416.73
7.4.330.0002.00416.69
7.4.320.0032.00116.37
7.4.300.0032.00016.38
7.4.290.0101.99116.53
7.4.280.0201.98516.43
7.4.270.0032.00016.44
7.4.260.0071.99413.30
7.4.250.0101.99116.40
7.4.240.0032.00016.48
7.4.230.0002.00316.48
7.4.220.0131.98816.40
7.4.210.0151.98616.48
7.4.200.0031.99816.58
7.4.190.0002.00216.57
7.4.160.0201.97816.44
7.4.150.0161.98617.40
7.4.140.0181.98617.86
7.4.130.0201.97616.36
7.4.120.0171.99116.49
7.4.110.0102.47316.39
7.4.100.0072.47016.57
7.4.90.0132.46016.58
7.4.80.0192.44419.39
7.4.70.0132.43716.35
7.4.60.0162.45816.34
7.4.50.0072.49216.47
7.4.40.0032.49322.77
7.4.30.0232.43316.30
7.4.00.0002.49515.07
7.3.330.0131.98713.31
7.3.320.0002.00313.23
7.3.310.0002.00316.22
7.3.300.0031.99816.27
7.3.290.0101.98416.31
7.3.280.0131.98816.27
7.3.270.0171.99017.40
7.3.260.0231.97518.24
7.3.250.0161.98316.45
7.3.240.0131.98616.45
7.3.230.0072.47416.39
7.3.210.0172.43516.57
7.3.200.0282.38219.39
7.3.190.0102.43916.34
7.3.180.0002.46416.37
7.3.170.0072.44816.56
7.3.160.0202.44516.32
7.3.120.0072.48614.95
7.2.330.0132.44116.54
7.2.320.0162.42716.39
7.2.310.0102.47016.79
7.2.300.0602.17716.26
7.2.290.0132.46116.81
7.2.00.0002.50119.23
7.1.100.0102.49118.13
7.1.70.0032.49817.14
7.1.60.0072.49417.38
7.1.50.0032.49817.26
7.0.200.0102.49116.55
5.4.220.0232.40718.98
5.4.210.0132.43718.88
5.4.200.0332.42319.01
5.4.190.0032.41319.04
5.4.180.0372.42018.84
5.4.170.0232.40719.07
5.4.160.0102.41719.00
5.4.150.0272.43319.08
5.4.140.0072.41316.32
5.4.130.0202.43716.46
5.4.120.0272.42716.34
5.4.110.0072.28316.51
5.4.100.0271.87716.40
5.4.90.0272.07016.33
5.4.80.0171.77016.37
5.4.70.0071.93016.50
5.4.60.0172.24016.48
5.4.50.0202.26716.35
5.4.40.0131.94016.30
5.4.30.0101.99016.46
5.4.20.0331.93716.48
5.4.10.0131.82016.45
5.4.00.0131.86315.99
5.3.270.0100.05014.60
5.3.260.0070.05314.63
5.3.250.0100.04714.60
5.3.240.0070.05014.65
5.3.230.0070.05014.61
5.3.220.0100.05014.44
5.3.210.0030.06014.41
5.3.200.0100.04714.27
5.3.190.0030.05314.72
5.3.180.0070.05014.41
5.3.170.0030.05014.58
5.3.160.0170.04014.57
5.3.150.0030.05314.61
5.3.140.0100.04714.42
5.3.130.0130.04714.60
5.3.120.0000.06014.55
5.3.110.0070.05314.42
5.3.100.0070.05013.81
5.3.90.0030.07013.91
5.3.80.0100.04714.02
5.3.70.0130.04013.79
5.3.60.0030.05013.92
5.3.50.0070.05013.96
5.3.40.0100.04313.86

preferences:
47.37 ms | 401 KiB | 5 Q