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<1000; $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.70.0070.01816.75
8.3.60.0140.00718.43
8.3.50.0180.00722.93
8.3.40.0130.00318.96
8.3.30.0090.00619.27
8.3.20.0100.00020.16
8.3.10.0040.00423.48
8.3.00.0040.00419.27
8.2.180.0150.00916.50
8.2.170.0120.00322.96
8.2.160.0070.01019.00
8.2.150.0030.00524.18
8.2.140.0090.00024.66
8.2.130.0040.00426.16
8.2.120.0040.00421.05
8.2.110.0090.00021.04
8.2.100.0150.00017.97
8.2.90.0000.00919.17
8.2.80.0000.00917.97
8.2.70.0040.00417.88
8.2.60.0040.00418.05
8.2.50.0040.00418.07
8.2.40.0060.00318.03
8.2.30.0080.00018.31
8.2.20.0050.00518.06
8.2.10.0030.00518.32
8.2.00.0030.00617.98
8.1.280.0040.01525.92
8.1.270.0070.00323.92
8.1.260.0040.00726.35
8.1.250.0000.00928.09
8.1.240.0080.00421.16
8.1.230.0080.00317.89
8.1.220.0030.00617.91
8.1.210.0060.00318.77
8.1.200.0000.00917.60
8.1.190.0060.00317.60
8.1.180.0060.00318.10
8.1.170.0030.00618.82
8.1.160.0040.00422.15
8.1.150.0060.00319.02
8.1.140.0000.00817.79
8.1.130.0000.00717.90
8.1.120.0050.00517.75
8.1.110.0020.00517.73
8.1.100.0000.00717.80
8.1.90.0030.00517.71
8.1.80.0000.00717.71
8.1.70.0000.00717.70
8.1.60.0040.00417.79
8.1.50.0050.00317.71
8.1.40.0080.00017.76
8.1.30.0030.00617.75
8.1.20.0040.00417.87
8.1.10.0030.00617.85
8.1.00.0040.00417.72
8.0.300.0000.00818.77
8.0.290.0090.00017.00
8.0.280.0070.00018.45
8.0.270.0060.00317.33
8.0.260.0030.00317.33
8.0.250.0050.00317.13
8.0.240.0070.00017.16
8.0.230.0000.00717.15
8.0.220.0030.00516.92
8.0.210.0040.00416.93
8.0.200.0080.00017.14
8.0.190.0050.00516.98
8.0.180.0040.00417.20
8.0.170.0000.01017.12
8.0.160.0040.00416.97
8.0.150.0070.00017.07
8.0.140.0040.00416.93
8.0.130.0050.00213.62
8.0.120.0090.00017.04
8.0.110.0090.00017.05
8.0.100.0040.00416.92
8.0.90.0000.00817.10
8.0.80.0030.01716.98
8.0.70.0030.00516.88
8.0.60.0050.00516.99
8.0.50.0050.00316.89
8.0.30.0400.02117.21
8.0.20.0250.01217.40
8.0.10.0040.00417.02
8.0.00.0170.01816.75
7.4.330.0000.00515.11
7.4.320.0040.00416.64
7.4.300.0060.00316.59
7.4.290.0040.00416.57
7.4.280.0070.00016.55
7.4.270.0000.00716.79
7.4.260.0030.00516.69
7.4.250.0050.00316.56
7.4.240.0040.00416.75
7.4.230.0000.00816.55
7.4.220.0000.02416.70
7.4.210.0140.01416.67
7.4.200.0060.00316.68
7.4.160.0180.02316.61
7.4.150.0030.01717.40
7.4.140.0050.01517.86
7.4.130.0250.01216.71
7.4.120.0180.01216.77
7.4.110.0430.01216.70
7.4.100.0070.01816.68
7.4.90.0070.01316.56
7.4.80.0090.02019.39
7.4.70.0230.01016.78
7.4.60.0110.00716.70
7.4.50.0040.00416.43
7.4.40.0160.00316.68
7.4.30.0160.03316.71
7.4.00.0090.00914.84
7.3.330.0030.16913.57
7.3.320.0030.15813.63
7.3.310.0000.00716.54
7.3.300.0040.00416.43
7.3.290.0100.00716.42
7.3.280.0050.01616.56
7.3.270.0230.01317.40
7.3.260.0190.02416.82
7.3.250.0250.01416.60
7.3.240.0180.02216.73
7.3.230.0120.00916.63
7.3.210.0130.00916.75
7.3.200.0180.02319.39
7.3.190.0440.01616.63
7.3.180.0090.01616.45
7.3.170.0160.00316.61
7.3.160.0130.00616.72
7.3.10.0170.00416.76
7.3.00.0140.00716.59
7.2.330.0200.02116.76
7.2.320.0200.01316.94
7.2.310.0130.01317.00
7.2.300.0220.01116.94
7.2.290.0160.00316.99
7.2.130.0100.01016.75
7.2.120.0120.01216.98
7.2.110.0110.00716.69
7.2.100.0150.00917.00
7.2.90.0160.00616.68
7.2.80.0210.00416.80
7.2.70.0150.00916.55
7.2.60.0290.00016.92
7.2.50.0100.01016.62
7.2.40.0100.00716.86
7.2.30.0140.00516.93
7.2.20.0120.00816.74
7.2.10.0100.01316.76
7.2.00.0090.01118.47
7.1.250.0140.01115.60
7.1.100.0060.00618.39
7.1.70.0080.00017.33
7.1.60.0070.01719.46
7.1.50.0130.01017.32
7.0.200.0040.00417.01

preferences:
31.4 ms | 401 KiB | 5 Q