3v4l.org

run code in 300+ PHP versions simultaneously
<?php function check($s1, $s2) { global $jdeg, $lmon; //var_dump($s1, $s2); $deg1 = $jdeg[$s1]; $deg2 = $jdeg[$s2]; $mon1 = $lmon[$deg1]; $mon2 = $lmon[$deg2]; if( ($deg1 == 270 || $deg2 == 270) || ($deg1 == 0 || $deg2 == 0) || ($deg1 == 90 || $deg2 == 90) || ($deg1 == 180 || $deg2 == 180) ) { if($deg1 == 270 || $deg1 == 0 || $deg1 == 90 || $deg1 == 180) { $ldeg1 = $deg1; $ldeg2 = $deg2; $lmon1 = $mon1; $lmon2 = $mon2; } else { $ldeg1 = $deg2; $ldeg2 = $deg1; $lmon1 = $mon2; $lmon2 = $mon1; } } else { $ldeg1 = $deg1; $ldeg2 = $deg2; $lmon1 = $mon1; $lmon2 = $mon2; } return array($ldeg1, $ldeg2, $lmon1, $lmon2); } function main() { global $lmon, $jdeg, $jung; $lmon = array(330 => 1, 0 => 2, 30 => 3, 60 => 4, 90 => 5, 120 => 6, 150 => 7, 180 => 8, 210 => 9, 240 => 10, 270 => 11, 300 => 12); $jdeg = array( 0 => "270", 1 => "300", 2 => "330", 3 => "0", 4 => "30", 5 => "60", 6 => "90", 7 => "120", 8 => "150", 9 => "180", 10 => "210", 11 => "240", 12 => "270", 13 => "300", 14 => "330", 15 => "0", 16 => "30", 17 => "60", 18 => "90", 19 => "120", 20 => "150", 21 => "180", 22 => "210", 23 => "240", 24 => "270", 25 => "300", 26 => "330", 27 => "0", 28 => "30", 29 => "60", 30 => "90", 31 => "120", 32 => "150", 33 => "180", 34 => "210", 35 => "240", 36 => "270", 37 => "300", 38 => "330", 39 => "0", 40 => "30", 41 => "60", 42 => "90", 43 => "120", 44 => "150", 45 => "180", 46 => "210", 47 => "240", 48 => "270", 49 => "300", 50 => "330", 51 => "0", 52 => "30", 53 => "60", 54 => "90", 55 => "120", 56 => "150", 57 => "180", 58 => "210", 59 => "240", 60 => "270", 61 => "300", 62 => "330", 63 => "0", 64 => "30", 65 => "60", 66 => "90", 67 => "120", 68 => "150", 69 => "180", 70 => "210", 71 => "240", 72 => "270", 73 => "300", 74 => "330", 75 => "0", 76 => "30", 77 => "60", 78 => "90", 79 => "120", 80 => "150", 81 => "180", 82 => "210", 83 => "240", 84 => "270", 85 => "300", 86 => "330", 87 => "0", 88 => "30", 89 => "60", 90 => "90", 91 => "120", 92 => "150", 93 => "180", 94 => "210", 95 => "240", 96 => "270", 97 => "300", 98 => "330", 99 => "0", 100 => "30", 101 => "60", 102 => "90", 103 => "120", 104 => "150"); $jung = array( 0 => "0", 1 => "1", 2 => "2", 3 => "3", 4 => "4", 5 => "5", 6 => "6", 7 => "7", 8 => "8", 9 => "9", 10 => "10", 11 => "11", 12 => "12", 13 => "13", 14 => "14", 15 => "15", 16 => "16", 17 => "17", 18 => "18", 19 => "19", 20 => "20", 21 => "21", 22 => "22", 23 => "23", 24 => "24", 25 => "-1", 26 => "25", 27 => "26", 28 => "27", 29 => "28", 30 => "29", 31 => "30", 32 => "31", 33 => "32", 34 => "33", 35 => "34", 36 => "35", 37 => "36", 38 => "37", 39 => "38", 40 => "39", 41 => "40", 42 => "41", 43 => "42", 44 => "43", 45 => "44", 46 => "45", 47 => "46", 48 => "47", 49 => "48", 50 => "49", 51 => "50", 52 => "51", 53 => "52", 54 => "53", 55 => "-1", 56 => "54", 57 => "55.56", 58 => "-1", 59 => "57.58", 60 => "-1", 61 => "59", 62 => "60", 63 => "61", 64 => "62", 65 => "63", 66 => "64", 67 => "65", 68 => "66", 69 => "67", 70 => "68", 71 => "69", 72 => "70", 73 => "71", 74 => "72", 75 => "73", 76 => "74", 77 => "75", 78 => "76", 79 => "77", 80 => "78", 81 => "79", 82 => "80", 83 => "81", 84 => "82", 85 => "83", 86 => "84", 87 => "85", 88 => "86", 89 => "87", 90 => "-1", 91 => "88", 92 => "89", 93 => "90", 94 => "91", 95 => "92", 96 => "93", 97 => "94", 98 => "95", 99 => "96", 100 => "97"); test(); } function test() { global $lmon, $jdeg, $jung; for($j=0; $j<10000; $j++) { for($i=0; $i<100; $i++) { $r = $jung[$i]; if(preg_match("/\./", $r)) { $s = preg_split("/\./", $r); $s0 = $s[0]; $s1 = $s[1]; //var_dump($s); $r = check($s0, $s1); echo "[$j][$i] : $r[0], $r[1], $r[2], $r[3]\n"; } } } } main();

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.0100.02418.18
8.3.50.0160.02422.95
8.3.40.0070.03518.96
8.3.30.0030.03519.04
8.3.20.0060.01320.34
8.3.10.0100.01023.66
8.3.00.0000.02419.50
8.2.180.0070.03418.29
8.2.170.0190.02922.96
8.2.160.0140.02520.25
8.2.150.0070.01324.18
8.2.140.0070.01424.66
8.2.130.0000.01926.16
8.2.120.0100.01421.02
8.2.110.0070.02020.51
8.2.100.0070.01818.28
8.2.90.0060.00919.17
8.2.80.0040.01117.97
8.2.70.0090.00617.88
8.2.60.0000.01318.05
8.2.50.0090.01218.07
8.2.40.0000.01318.22
8.2.30.0070.00718.20
8.2.20.0070.00717.92
8.2.10.0070.00718.37
8.2.00.0070.00718.02
8.1.280.0190.01025.92
8.1.270.0060.01823.96
8.1.260.0100.01426.35
8.1.250.0040.01828.09
8.1.240.0040.01823.82
8.1.230.0100.01419.13
8.1.220.0000.01717.79
8.1.210.0030.01018.77
8.1.200.0000.01717.60
8.1.190.0030.01017.47
8.1.180.0090.00618.10
8.1.170.0040.01118.90
8.1.160.0070.00722.15
8.1.150.0030.01018.96
8.1.140.0030.01017.59
8.1.130.0040.00918.01
8.1.120.0030.01017.70
8.1.110.0080.00617.61
8.1.100.0030.01017.80
8.1.90.0110.00317.78
8.1.80.0060.00917.79
8.1.70.0090.00617.59
8.1.60.0030.01217.88
8.1.50.0040.01117.68
8.1.40.0000.01717.70
8.1.30.0060.00917.90
8.1.20.0030.01217.83
8.1.10.0000.01417.86
8.1.00.0030.01317.74
8.0.300.0070.00718.77
8.0.290.0040.01116.75
8.0.280.0100.00318.52
8.0.270.0100.00317.21
8.0.260.0030.01017.31
8.0.250.0050.00917.10
8.0.240.0000.01217.11
8.0.230.0000.01316.90
8.0.220.0030.01016.94
8.0.210.0000.01916.92
8.0.200.0000.01217.07
8.0.190.0000.01417.10
8.0.180.0000.01517.07
8.0.170.0090.00616.88
8.0.160.0000.01616.91
8.0.150.0030.01017.01
8.0.140.0000.01416.98
8.0.130.0000.01713.59
8.0.120.0060.00916.98
8.0.110.0030.01016.94
8.0.100.0100.00616.98
8.0.90.0030.01216.86
8.0.80.0070.05116.97
8.0.70.0030.01016.80
8.0.60.0030.01016.88
8.0.50.0000.01416.84
8.0.30.0320.04517.36
8.0.20.0240.03917.40
8.0.10.0030.01016.99
8.0.00.0160.04716.93
7.4.330.0030.01015.10
7.4.320.0080.00816.75
7.4.300.0030.00916.51
7.4.290.0070.00716.73
7.4.280.0070.01016.49
7.4.270.0030.01016.66
7.4.260.0000.01816.74
7.4.250.0030.01416.62
7.4.240.0020.01416.74
7.4.230.0030.01016.77
7.4.220.0310.03216.60
7.4.210.0100.03316.85
7.4.200.0040.01216.81
7.4.160.0290.06116.57
7.4.150.0390.03917.40
7.4.140.0250.04917.86
7.4.130.0270.03616.72
7.4.120.0280.04216.62
7.4.110.0540.04316.63
7.4.100.0490.05816.60
7.4.90.0140.04516.53
7.4.80.0150.04019.39
7.4.70.0390.04316.81
7.4.60.0170.04416.54
7.4.50.0030.01616.72
7.4.40.0430.04016.56
7.4.30.0260.03916.66
7.3.330.0040.01113.63
7.3.320.0060.00813.58
7.3.310.0000.01316.47
7.3.300.0040.01116.32
7.3.290.0200.04416.46
7.3.280.0140.04816.45
7.3.270.0270.06317.40
7.3.260.0510.05516.40
7.3.250.0250.04516.53
7.3.240.0360.03116.79
7.3.230.0160.04516.79
7.3.210.0400.08816.52
7.3.200.0070.03819.39
7.3.190.0090.02716.44
7.3.180.0250.03816.59
7.3.170.0140.02816.57
7.3.160.0220.02916.66
7.2.330.0300.05816.90
7.2.320.0200.05116.96
7.2.310.0250.06116.80
7.2.300.0160.03817.03
7.2.290.0270.04916.79
7.2.100.0850.01614.63
7.2.90.0150.01414.92
7.2.80.0220.05714.84
7.2.70.0850.01515.03
7.2.60.0580.02814.97
7.2.50.1480.03015.20
7.2.40.1070.02715.16
7.2.30.0870.02914.94
7.2.20.0300.02114.91
7.2.10.1130.01914.98
7.2.00.0930.03214.84
7.1.220.0290.05314.16
7.1.210.0230.01813.96
7.1.200.0070.02814.17
7.1.190.0890.01913.88
7.1.180.0580.03313.80
7.1.170.1070.00613.74
7.1.160.0770.02414.03
7.1.150.0410.05613.87
7.1.140.0130.01813.67
7.1.130.0990.01213.74
7.1.120.1340.04913.94
7.1.110.0780.02013.95
7.1.100.1130.03214.03
7.1.90.0870.02314.23
7.1.80.0840.01914.13
7.1.70.0980.02613.96
7.1.60.1380.01532.31
7.1.50.1190.03732.14
7.1.40.0360.04032.00
7.1.30.0280.02332.28
7.1.20.0380.02931.96
7.1.10.0400.01313.92
7.1.00.1680.01314.06
7.0.310.0110.03013.70
7.0.300.0880.03513.64
7.0.290.0900.01313.19
7.0.280.0820.01913.52
7.0.270.1090.02313.70
7.0.260.0180.02713.35
7.0.250.1140.02313.67
7.0.240.1350.04513.88
7.0.230.0740.03013.81
7.0.220.0650.01713.71
7.0.210.0810.02613.69
7.0.200.1280.03013.75
7.0.190.0480.03413.76
7.0.180.0420.03313.82
7.0.170.0220.04813.90
7.0.160.0950.03013.64
7.0.150.1450.01313.49
7.0.140.0650.04213.49
7.0.130.1450.01213.85
7.0.120.0180.06113.66
7.0.110.1050.01713.87
7.0.100.0200.04113.82
7.0.90.0410.03013.72
7.0.80.0190.02913.67
7.0.70.0110.04013.60
7.0.60.0960.01213.52
7.0.50.0200.02013.77
7.0.40.1800.03513.73
7.0.30.0160.01613.83
7.0.20.1990.03213.84
7.0.10.0170.01313.85
7.0.00.0150.06613.89
5.6.380.0220.06414.48
5.6.370.0190.03814.43
5.6.360.0130.05114.05
5.6.350.0060.03914.50
5.6.340.0190.03914.15
5.6.330.0190.03914.00
5.6.320.0060.05714.26
5.6.310.0210.05714.65
5.6.300.0070.06514.18
5.6.290.0120.04514.25
5.6.280.0140.04314.08
5.6.270.0140.05914.59
5.6.260.0150.05814.17
5.6.250.0220.06714.41
5.6.240.0090.05214.46
5.6.230.0240.05114.46
5.6.220.0240.03914.52
5.6.210.0130.05914.36
5.6.200.0110.06314.27
5.6.190.0080.04114.13
5.6.180.0160.03014.24
5.6.170.0150.06414.34
5.6.160.0060.03714.11
5.6.150.0110.03614.44
5.6.140.0190.04414.68
5.6.130.0060.04114.30
5.6.120.0120.03514.48
5.6.110.0140.05714.46
5.6.100.0080.08714.28
5.6.90.0170.06314.32
5.6.80.0220.03514.29
5.6.70.0210.07414.36
5.6.60.0060.04514.23
5.6.50.0210.04314.25
5.6.40.0060.06314.65
5.6.30.0170.05914.45
5.6.20.0090.04314.30
5.6.10.0100.04014.28
5.6.00.0070.04314.42
5.5.380.0040.06512.46
5.5.370.0180.06512.46
5.5.360.0110.07412.46
5.5.350.0160.05812.46
5.5.340.0070.03612.46
5.5.330.0040.04712.46
5.5.320.0140.06812.46
5.5.310.0170.03212.46
5.5.300.0140.04512.46
5.5.290.0060.03712.46
5.5.280.0080.04812.46
5.5.270.0070.08112.46
5.5.260.0060.04912.46
5.5.250.0040.05312.46
5.5.240.0110.05312.46
5.5.230.0130.03512.46
5.5.220.0130.05912.46
5.5.210.0180.02612.46
5.5.200.0210.04612.46
5.5.190.0060.07112.46
5.5.180.0030.06912.46
5.5.170.0130.05514.28
5.5.160.0110.04412.46
5.5.150.0030.07912.46
5.4.450.0230.03512.46
5.4.440.0070.04012.46
5.4.430.0070.07712.46
5.4.420.0090.04512.46
5.4.410.0150.04412.46
5.4.400.0080.03812.46
5.4.390.0140.02912.46
5.4.380.0090.03612.46
5.4.370.0140.04712.46
5.4.360.0060.04812.46
5.4.350.0170.05012.46
5.4.340.0170.03612.46
5.4.330.0130.04212.46
5.4.320.0040.05812.46
5.4.310.0120.04812.46

preferences:
39.77 ms | 401 KiB | 5 Q