3v4l.org

run code in 300+ PHP versions simultaneously
<?php $psr4 = array( 'my\\first\\ns\\prefix\\' => 0, 'my\\second\\ns\\prefix\\' => 0, 'my\\third\\ns\prefix' => 0, ); foreach ($psr4 => $prefix => &$v) { $v = strlen($prefix); } $classes = array( 'my\\third\\ns\\prefix\\subns\\class', 'another\\ns\\prefix\\subns\\class', ); foreach ($classes $class) { foreach ($psr4 as $prefix => $length) { if (0 === strpos($class, $prefix)) { echo "$class -> $prefix\n"; break; } } } echo "-----------------------------\”"; foreach ($classes $class) { foreach ($psr4 as $prefix => $length) { if (strncmp($class, $prefix, $length)) { echo "$class -> $prefix\n"; break; } } }

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)
5.6.80.0100.05020.50
5.5.240.0030.06320.11
5.4.400.4300.04319.23
5.4.390.4130.04019.15
5.4.380.3930.04319.23
5.4.370.4200.04718.99
5.4.360.3970.03719.17
5.4.350.4370.03719.24
5.4.340.3530.03019.16
5.4.320.4070.03719.14
5.4.310.3970.03719.09
5.4.300.3370.02719.16
5.4.290.4000.03719.18
5.4.280.3870.03718.88
5.4.270.4030.04018.89
5.4.260.3130.04019.00
5.4.250.3430.02719.21
5.4.240.3430.03318.84
5.4.230.3530.03719.23
5.4.220.3630.04018.96
5.4.210.4070.03318.84
5.4.200.3100.04019.24
5.4.190.3500.04318.84
5.4.180.3430.04018.94
5.4.170.3630.04319.23
5.4.160.4170.03318.97
5.4.150.4430.04018.83
5.4.140.4300.04016.35
5.4.130.4230.02716.51
5.4.120.4070.02716.51
5.4.110.4070.04016.56
5.4.100.3970.03016.35
5.4.90.3730.03316.54
5.4.80.3700.03716.39
5.4.70.3970.04316.54
5.4.60.3770.03316.24
5.4.50.3930.03316.16
5.4.40.3530.03716.54
5.4.30.4230.04016.50
5.4.20.4400.03716.34
5.4.10.3900.04316.42
5.4.00.4330.04016.12
5.3.290.3930.03014.50
5.3.280.3400.04014.49
5.3.270.3900.03314.48
5.3.260.3800.04014.65
5.3.250.4370.03714.48
5.3.240.4200.03714.61
5.3.230.4270.04014.43
5.3.220.4430.03714.50
5.3.210.4230.03714.52
5.3.200.4170.04014.46
5.3.190.3770.03314.47
5.3.180.4100.03714.42
5.3.170.4200.03314.42
5.3.160.4000.04014.66
5.3.150.3370.03714.40
5.3.140.3400.04014.40
5.3.130.4230.03714.58
5.3.120.4330.04014.50
5.3.110.4300.04014.50
5.3.100.5170.05013.91
5.3.90.4070.03313.87
5.3.80.4270.04013.95
5.3.70.4000.04714.00
5.3.60.3730.03313.95
5.3.50.3500.03013.89
5.3.40.4070.03713.93
5.3.30.3670.03713.76
5.3.20.4400.04713.54
5.3.10.4530.03313.75
5.3.00.3600.04013.48
5.2.170.3400.03011.05
5.2.160.3670.03311.19
5.2.150.3030.02310.98
5.2.140.2930.03010.99
5.2.130.3600.02710.94
5.2.120.3800.03310.99
5.2.110.3130.03311.14
5.2.100.3200.03310.95
5.2.90.3030.03311.21
5.2.80.2970.03310.98
5.2.70.3070.03310.94
5.2.60.2800.02710.88
5.2.50.2730.03310.88
5.2.40.2330.03010.93
5.2.30.2270.02311.02
5.2.20.2570.02710.89
5.2.10.2270.02310.91
5.2.00.2300.02310.79
5.1.60.2170.0279.97
5.1.50.2200.0239.92
5.1.40.2800.03010.06
5.1.30.2970.02010.49
5.1.20.2630.02310.35
5.1.10.3030.0279.94
5.1.00.2800.0279.98
5.0.50.1370.0178.63
5.0.40.1330.0208.29
5.0.30.1330.0308.20
5.0.20.1330.0208.11
5.0.10.1670.0208.14
5.0.00.1400.0378.20
4.4.90.1130.0175.86
4.4.80.1200.0135.86
4.4.70.1300.0175.88
4.4.60.1170.0135.86
4.4.50.1100.0175.86
4.4.40.1070.0275.86
4.4.30.1200.0175.89
4.4.20.1330.0135.87
4.4.10.1570.0175.86
4.4.00.1400.0235.86
4.3.110.1300.0175.86
4.3.100.1430.0135.86
4.3.90.1330.0175.86
4.3.80.1230.0205.86
4.3.70.1170.0175.86
4.3.60.1200.0135.86
4.3.50.1130.0175.86
4.3.40.1100.0235.86
4.3.30.0700.0275.86
4.3.20.0530.0175.86
4.3.10.0770.0205.86
4.3.00.0800.0135.86

preferences:
142.89 ms | 1394 KiB | 7 Q