3v4l.org

run code in 300+ PHP versions simultaneously
<?php $authTokens = $client->request($uri)->getHeader('WWW-Authenticate')[0]; $explode = explode(',', $authTokens); $realm = rtrim(str_replace('Digest realm="', '', $explode[0]), '"'); $qop = rtrim(str_replace('quo="', '', $explode[1]), '"'); $nonce = rtrim(str_replace('nonce="', '', $explode[2]), '"'); $cnonce = md5(uniqid()); $nc = $key; $A1 = md5(sprintf("%s:%s:%s", $config['auth']['username'], $realm, $config['auth']['password'])); $A2 = md5(sprintf("%s:%s", 'GET', $uri)); $hash = md5(sprintf("%s:%s:%s:%s:%s:%s", $A1, $nonce, $nc, $cnonce, $qop, $A2)); $response = md5(sprintf( 'Digest nonce="%s",nc="%s",cnonce="%s",qop="%s",username="%s",uri="%s",response="%s"', $nonce, $nc, $cnonce, $qop, $config['auth']['username'], $uri, $hash )); $request->setAllHeaders(['Authorization' => $response]);

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)
7.4.00.0070.01114.93
7.3.120.0080.00814.88
7.3.110.0050.00814.64
7.3.100.0100.00314.62
7.3.90.0110.00514.77
7.3.80.0090.00714.72
7.3.70.0080.00314.90
7.3.60.0070.00814.74
7.3.50.0050.00914.62
7.3.40.0040.00714.71
7.3.30.0100.00514.64
7.3.20.0070.00616.59
7.3.10.0030.01116.56
7.3.00.0020.00916.46
7.2.250.0100.00714.85
7.2.240.0040.01114.91
7.2.230.0090.00914.98
7.2.220.0060.01114.95
7.2.210.0040.01314.95
7.2.200.0030.01115.06
7.2.190.0030.01214.84
7.2.180.0020.01314.97
7.2.170.0020.01114.90
7.2.160.0040.01115.03
7.2.150.0050.00916.61
7.2.140.0030.01016.81
7.2.130.0060.00916.82
7.2.120.0060.00716.80
7.2.110.0030.01116.80
7.2.100.0050.00816.92
7.2.90.0030.01116.84
7.2.80.0110.00416.87
7.2.70.0070.00816.79
7.2.60.0120.00316.63
7.2.50.0020.01016.79
7.2.40.0030.00816.73
7.2.30.0060.01016.93
7.2.20.0090.00616.79
7.2.10.0050.01116.82
7.2.00.0090.00317.56
7.1.330.0050.01015.69
7.1.320.0050.00415.57
7.1.310.0040.00915.79
7.1.300.0040.01315.63
7.1.290.0070.00515.49
7.1.280.0080.00615.63
7.1.270.0080.00715.46
7.1.260.0020.01015.72
7.1.250.0050.00515.70
7.1.70.0050.00317.00
7.1.60.0130.01019.46
7.1.50.0040.00716.90
7.1.00.0100.06722.27
7.0.200.0000.00816.67
7.0.140.0030.07321.97
7.0.100.0200.07320.05
7.0.90.0330.07020.17
7.0.80.0370.07020.18
7.0.70.0230.08019.95
7.0.60.0300.08019.90
7.0.50.0100.07720.34
7.0.40.0030.06020.11
7.0.30.0070.08320.11
7.0.20.0030.06720.00
7.0.10.0070.05719.99
7.0.00.0130.07020.07
5.6.280.0030.07321.08
5.6.250.0030.09020.68
5.6.240.0030.08320.73
5.6.230.0100.07320.68
5.6.220.0030.05720.63
5.6.210.0100.08020.75
5.6.200.0130.07321.07
5.6.190.0130.07721.12
5.6.180.0100.08321.07
5.6.170.0100.04721.11
5.6.160.0030.05320.95
5.6.150.0130.08021.05
5.6.140.0100.08021.03
5.6.130.0030.05021.09
5.6.120.0070.07321.04
5.6.110.0000.04721.04
5.6.100.0100.05021.10
5.6.90.0130.07721.01
5.6.80.0130.04020.51
5.6.70.0130.06720.33
5.6.60.0070.08020.34
5.6.50.0000.06020.41
5.6.40.0100.03720.41
5.6.30.0070.07720.30
5.6.20.0070.04720.32
5.6.10.0030.04320.47
5.6.00.0170.07320.30
5.5.380.0100.08320.38
5.5.370.0130.03320.43
5.5.360.0070.07720.43
5.5.350.0100.07320.37
5.5.340.0230.06020.86
5.5.330.0100.05720.91
5.5.320.0100.04720.90
5.5.310.0130.07320.77
5.5.300.0030.04320.89
5.5.290.0070.09020.81
5.5.280.0030.08020.77
5.5.270.0030.07320.80
5.5.260.0170.08020.77
5.5.250.0070.07020.55
5.5.240.0130.07020.30
5.5.230.0000.08020.12
5.5.220.0070.08020.18
5.5.210.0030.05020.16
5.5.200.0130.06720.27
5.5.190.0130.08320.28
5.5.180.0100.07320.29
5.5.160.0070.07020.22
5.5.150.0100.07720.13
5.5.140.0230.05720.24
5.5.130.0070.07320.13
5.5.120.0130.07020.29
5.5.110.0100.07720.27
5.5.100.0130.07320.09
5.5.90.0030.08020.16
5.5.80.0100.07720.13
5.5.70.0070.07720.16
5.5.60.0130.07019.97
5.5.50.0230.06320.07
5.5.40.0030.08320.09
5.5.30.0070.07720.14
5.5.20.0130.04320.15
5.5.10.0130.07020.05
5.5.00.0030.04019.92
5.4.450.0030.08719.36
5.4.440.0070.07719.14
5.4.430.0070.05319.55
5.4.420.0070.09019.42
5.4.410.0030.08318.98
5.4.400.0100.07718.82
5.4.390.0100.07718.91
5.4.380.0030.07718.90
5.4.370.0100.07018.79
5.4.360.0030.04719.08
5.4.350.0030.04318.81
5.4.340.0100.04719.02
5.4.320.0100.07019.09
5.4.310.0070.06718.95
5.4.300.0030.07319.13
5.4.290.0070.07718.94
5.4.280.0030.08319.09
5.4.270.0070.07318.96
5.4.260.0130.06319.03
5.4.250.0170.06319.02
5.4.240.0030.08318.94
5.4.230.0070.08018.96
5.4.220.0130.07019.03
5.4.210.0200.06318.79
5.4.200.0130.06718.89
5.4.190.0070.05018.80
5.4.180.0030.07719.02
5.4.170.0100.03719.12
5.4.160.0100.06719.11
5.4.150.0000.07719.05
5.4.140.0070.06716.22
5.4.130.0070.05316.00
5.4.120.0170.06316.23
5.4.110.0030.05316.39
5.4.100.0070.06016.31
5.4.90.0100.05316.23
5.4.80.0030.04016.36
5.4.70.0130.06016.20
5.4.60.0070.07316.19
5.4.50.0100.06716.23
5.4.40.0130.07016.41
5.4.30.0100.07016.41
5.4.20.0000.04716.38
5.4.10.0070.07316.36
5.4.00.0170.04015.45
5.3.290.0070.08014.64
5.3.280.0030.08014.59
5.3.270.0100.06714.47
5.3.260.0000.04014.49
5.3.250.0100.07014.55
5.3.240.0100.07014.48
5.3.230.0070.08314.46
5.3.220.0130.06314.55
5.3.210.0030.05314.48
5.3.200.0030.04014.48
5.3.190.0130.07014.55
5.3.180.0100.05714.55
5.3.170.0130.05714.47
5.3.160.0000.05314.39
5.3.150.0100.07014.48
5.3.140.0070.06314.41
5.3.130.0100.05314.41
5.3.120.0130.06314.41
5.3.110.0070.08014.46
5.3.100.0000.07713.90
5.3.90.0070.05013.89
5.3.80.0100.06714.02
5.3.70.0100.05714.03
5.3.60.0100.07013.77
5.3.50.0070.04313.91
5.3.40.0070.08013.95
5.3.30.0100.06313.90
5.3.20.0030.07313.70
5.3.10.0170.04713.64
5.3.00.0170.06713.61
5.2.170.0000.06311.13
5.2.160.0070.06011.00
5.2.150.0030.05711.14
5.2.140.0030.06310.98
5.2.130.0070.05311.02
5.2.120.0200.02711.02
5.2.110.0030.06710.92
5.2.100.0030.06011.08
5.2.90.0070.05311.06
5.2.80.0030.04711.15
5.2.70.0070.06011.16
5.2.60.0070.06011.01
5.2.50.0030.06710.84
5.2.40.0070.05710.84
5.2.30.0000.06011.02
5.2.20.0070.05710.93
5.2.10.0000.06310.93
5.2.00.0070.04310.66
5.1.60.0030.05310.07
5.1.50.0030.0279.87
5.1.40.0070.04710.00
5.1.30.0030.05010.36
5.1.20.0030.06010.36
5.1.10.0130.04310.06
5.1.00.0000.05710.13
5.0.50.0070.0408.63
5.0.40.0000.0238.55
5.0.30.0000.0338.55
5.0.20.0000.0378.55
5.0.10.0030.0438.55
5.0.00.0070.0308.55
4.4.90.0030.0178.55
4.4.80.0030.0338.55
4.4.70.0000.0378.55
4.4.60.0000.0338.55
4.4.50.0070.0308.55
4.4.40.0070.0508.55
4.4.30.0070.0308.55
4.4.20.0000.0378.55
4.4.10.0000.0378.55
4.4.00.0030.0508.55
4.3.110.0000.0238.55
4.3.100.0000.0378.55
4.3.90.0000.0378.55
4.3.80.0100.0438.55
4.3.70.0000.0408.55
4.3.60.0000.0378.55
4.3.50.0000.0278.55
4.3.40.0070.0338.55
4.3.30.0000.0308.55
4.3.20.0000.0238.55
4.3.10.0070.0138.55
4.3.00.0000.0338.55

preferences:
33.29 ms | 400 KiB | 5 Q