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<1000; $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.0160.01618.43
8.3.50.0310.02123.07
8.3.40.0140.02118.95
8.3.30.0140.01818.87
8.3.20.0090.00620.20
8.3.10.0060.01023.53
8.3.00.0070.01019.63
8.2.180.0140.02416.75
8.2.170.0130.02322.96
8.2.160.0070.02920.43
8.2.150.0040.01524.18
8.2.140.0030.01024.66
8.2.130.0100.00726.16
8.2.120.0060.01321.05
8.2.110.0040.01820.34
8.2.100.0200.00718.34
8.2.90.0070.00719.22
8.2.80.0100.00617.97
8.2.70.0090.00617.88
8.2.60.0070.00717.93
8.2.50.0110.01018.07
8.2.40.0030.01018.34
8.2.30.0030.01018.26
8.2.20.0000.01517.98
8.2.10.0030.01018.18
8.2.00.0080.00617.88
8.1.280.0180.02125.92
8.1.270.0000.01623.98
8.1.260.0150.00326.35
8.1.250.0090.00628.09
8.1.240.0070.01523.75
8.1.230.0000.02419.20
8.1.220.0070.00717.91
8.1.210.0090.00918.77
8.1.200.0070.01317.60
8.1.190.0040.01117.35
8.1.180.0000.01718.10
8.1.170.0000.01318.82
8.1.160.0030.01022.16
8.1.150.0030.01018.94
8.1.140.0070.00717.67
8.1.130.0000.01317.71
8.1.120.0090.00317.64
8.1.110.0030.01017.71
8.1.100.0030.01017.75
8.1.90.0000.01317.63
8.1.80.0040.01117.73
8.1.70.0030.01017.65
8.1.60.0070.01017.74
8.1.50.0000.01817.82
8.1.40.0030.01317.77
8.1.30.0000.01717.86
8.1.20.0040.01417.77
8.1.10.0040.01117.80
8.1.00.0030.01317.77
8.0.300.0040.01318.77
8.0.290.0080.00816.88
8.0.280.0070.00718.37
8.0.270.0030.01017.18
8.0.260.0070.00716.96
8.0.250.0000.01417.09
8.0.240.0000.01317.03
8.0.230.0060.00916.98
8.0.220.0090.00617.04
8.0.210.0030.00916.93
8.0.200.0030.01317.13
8.0.190.0000.01817.08
8.0.180.0060.01017.09
8.0.170.0040.01417.04
8.0.160.0070.00716.91
8.0.150.0000.01317.01
8.0.140.0110.01417.00
8.0.130.0090.00613.53
8.0.120.0030.01217.02
8.0.110.0060.00816.98
8.0.100.0000.01316.85
8.0.90.0000.01416.86
8.0.80.0100.02617.04
8.0.70.0000.01416.84
8.0.60.0030.01216.88
8.0.50.0070.01016.86
8.0.30.0260.01917.16
8.0.20.0100.03517.40
8.0.10.0030.01016.99
8.0.00.0110.03217.07
7.4.330.0000.01315.17
7.4.320.0030.01016.65
7.4.300.0040.01116.75
7.4.290.0080.00816.69
7.4.280.0060.01216.62
7.4.270.0070.00716.58
7.4.260.0040.01516.59
7.4.250.0030.01416.50
7.4.240.0050.01016.71
7.4.230.0030.01016.75
7.4.220.0070.03616.81
7.4.210.0100.02916.67
7.4.200.0000.01316.63
7.4.160.0220.02816.58
7.4.150.0260.01817.40
7.4.140.0100.03217.86
7.4.130.0130.02916.73
7.4.120.0170.02516.78
7.4.110.0110.03216.86
7.4.100.0210.04016.87
7.4.90.0070.03216.65
7.4.80.0200.04019.39
7.4.70.0180.04216.85
7.4.60.0150.02316.71
7.4.50.0100.01016.77
7.4.40.0170.02716.85
7.4.30.0070.03116.86
7.3.330.0030.01013.55
7.3.320.0000.01313.32
7.3.310.0000.01416.43
7.3.300.0030.01116.41
7.3.290.0100.02516.48
7.3.280.0110.02716.60
7.3.270.0220.02517.40
7.3.260.0150.04016.56
7.3.250.0210.03416.71
7.3.240.0270.02316.86
7.3.230.0140.02716.71
7.3.210.0250.01916.66
7.3.200.0120.02819.39
7.3.190.0210.03816.80
7.3.180.0140.04116.52
7.3.170.0170.02116.88
7.3.160.0140.02416.58
7.2.330.0210.03616.91
7.2.320.0130.04717.00
7.2.310.0170.03216.98
7.2.300.0230.03816.80
7.2.290.0090.03216.79
7.2.100.1650.00715.09
7.2.90.0150.02214.90
7.2.80.1150.01014.66
7.2.70.0330.01515.04
7.2.60.1140.03115.29
7.2.50.0100.03915.21
7.2.40.0920.01515.14
7.2.30.0230.03015.38
7.2.20.2230.02515.32
7.2.10.1080.01515.32
7.2.00.0070.02415.37
7.1.220.0450.03814.07
7.1.210.0130.01914.20
7.1.200.0150.03014.10
7.1.190.1170.02614.11
7.1.180.0200.03714.09
7.1.170.0330.02214.06
7.1.160.0070.02214.11
7.1.150.2720.01914.25
7.1.140.0580.02813.99
7.1.130.0780.03813.88
7.1.120.2650.01714.20
7.1.110.0150.02314.04
7.1.100.2740.01014.02
7.1.90.0000.03314.18
7.1.80.2090.02514.36
7.1.70.0160.02113.95
7.1.60.0980.02432.04
7.1.50.0350.01632.12
7.1.40.0310.04032.32
7.1.30.0270.02831.93
7.1.20.1690.02431.98
7.1.10.0170.02113.94
7.1.00.1570.02514.15
7.0.310.0080.01913.66
7.0.300.1990.04013.98
7.0.290.1450.02013.81
7.0.280.0180.01213.81
7.0.270.0210.01113.82
7.0.260.2950.01913.79
7.0.250.0500.01314.06
7.0.240.2530.02213.82
7.0.230.2440.02413.81
7.0.220.1980.02213.80
7.0.210.0710.01913.95
7.0.200.1370.03413.50
7.0.190.1020.03013.79
7.0.180.0990.02213.41
7.0.170.0570.02213.71
7.0.160.0770.02813.91
7.0.150.1600.02613.83
7.0.140.0920.03313.62
7.0.130.0210.02713.83
7.0.120.1720.02713.71
7.0.110.0970.02513.84
7.0.100.0210.02813.65
7.0.90.0950.01713.78
7.0.80.0740.02813.43
7.0.70.0230.03213.84
7.0.60.1390.02013.88
7.0.50.0070.02913.82
7.0.40.0860.01913.77
7.0.30.0230.02413.73
7.0.20.0300.01513.92
7.0.10.0240.01613.73
7.0.00.0110.02813.66
5.6.380.0120.03214.58
5.6.370.0100.04614.44
5.6.360.0150.03514.27
5.6.350.0250.04214.57
5.6.340.0180.04414.44
5.6.330.0130.08214.41
5.6.320.0180.06614.46
5.6.310.0060.04514.57
5.6.300.0140.08214.25
5.6.290.0180.05214.28
5.6.280.0170.04214.40
5.6.270.0060.06114.30
5.6.260.0180.03714.40
5.6.250.0210.03914.26
5.6.240.0070.06314.14
5.6.230.0030.04614.16
5.6.220.0070.05214.73
5.6.210.0030.07014.18
5.6.200.0080.03814.48
5.6.190.0110.05714.43
5.6.180.0150.04914.15
5.6.170.0220.05614.52
5.6.160.0140.04814.25
5.6.150.0120.06014.30
5.6.140.0160.03914.55
5.6.130.0150.05514.24
5.6.120.0130.06114.12
5.6.110.0210.07314.55
5.6.100.0000.05114.26
5.6.90.0080.04114.55
5.6.80.0130.05414.43
5.6.70.0140.05614.38
5.6.60.0080.06314.62
5.6.50.0160.08814.70
5.6.40.0040.07014.47
5.6.30.0110.07914.17
5.6.20.0100.05714.39
5.6.10.0100.04414.52
5.6.00.0090.04514.52
5.5.380.0070.05112.37
5.5.370.0070.03412.37
5.5.360.0110.06112.37
5.5.350.0060.05012.37
5.5.340.0210.07112.37
5.5.330.0280.04912.37
5.5.320.0110.06712.37
5.5.310.0060.04212.37
5.5.300.0040.04312.37
5.5.290.0030.05312.37
5.5.280.0090.06212.37
5.5.270.0150.06412.37
5.5.260.0200.05912.37
5.5.250.0060.07512.37
5.5.240.0130.07212.37
5.5.230.0140.06412.37
5.5.220.0100.08612.37
5.5.210.0120.10112.37
5.5.200.0030.06712.37
5.5.190.0030.04412.37
5.5.180.0190.05012.37
5.5.170.0180.04814.20
5.5.160.0250.03112.37
5.5.150.0140.03212.37
5.4.450.0060.04412.37
5.4.440.0190.05512.37
5.4.430.0200.04012.37
5.4.420.0260.04612.37
5.4.410.0050.06412.37
5.4.400.0040.05312.37
5.4.390.0120.04012.37
5.4.380.0130.06412.37
5.4.370.0070.06012.37
5.4.360.0060.05312.37
5.4.350.0060.03912.37
5.4.340.0040.05012.37
5.4.330.0030.04912.37
5.4.320.0140.04912.37
5.4.310.0060.06212.37

preferences:
38.08 ms | 401 KiB | 5 Q