3v4l.org

run code in 300+ PHP versions simultaneously
<?php // This example is from https://github.com/facebook/hhvm/issues/3440 $xml = '<?xml version="1.0"?>' . "\n" . '<samlp:Response xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" xm' . 'lns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" Destination="https://pro' . 'ject.mysite.com/saml/acs" ID="FIMRSP_5990c800-0147-1411-b087-93da9d684e69" IssueInstant="2014-07-21T15:36:06Z" Ver' . 'sion="2.0"><saml:Issuer Format="urn:oasis:names:tc:SAML:2.0:nameid-format:entity">https://accessuat.mysite.com/fim/sps' . '/saml20/saml20</saml:Issuer><samlp:Status><samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success"/></samlp:' . 'Status><saml:Assertion ID="Assertion-uuid5990c7c6-0147-19bd-9537-93da9d684e69" IssueInstant="2014-07-21T15:36:06Z" Versi' . 'on="2.0"><saml:Issuer Format="urn:oasis:names:tc:SAML:2.0:nameid-format:entity">https://accessuat.mysite.com/fim/sps/s' . 'aml20/saml20</saml:Issuer><saml:Subject><saml:NameID Format="urn:oasis:names:tc:SAML:1.' . '1:nameid-format:unspecified">testjive</saml:NameID><saml:SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bear' . 'er"><saml:SubjectConfirmationData NotOnOrAfter="2014-07-21T15:46:06Z" Recipient="https://project.mysite.com/saml/a' . 'cs"/></saml:SubjectConfirmation></saml:Subject><saml:Conditions NotBefore="2014-07-21T15:26:06Z" NotOnOrAfter="2014-07-2' . '1T15:46:06Z"><saml:AudienceRestriction><saml:Audience>http://project.mysite.com</saml:Audience></saml:AudienceRest' . 'riction></saml:Conditions><saml:AuthnStatement AuthnInstant="2014-07-21T15:36:06Z" SessionIndex="uuid599090e7-0147-15b6-' . '9dfd-93da9d684e69" SessionNotOnOrAfter="2014-07-21T16:36:06Z"><saml:AuthnContext><saml:AuthnContextClassRef>urn:oasis:na' . 'mes:tc:SAML:2.0:ac:classes:Password</saml:AuthnContextClassRef></saml:AuthnContext></saml:AuthnStatement><saml:Attribute' . 'Statement><saml:Attribute Name="LastName" NameFormat="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified"><saml:Attri' . 'buteValue xsi:type="xs:string">user</saml:AttributeValue></saml:Attribute><saml:Attribute Name="FirstName" NameFormat="u' . 'rn:oasis:names:tc:SAML:1.1:nameid-format:unspecified"><saml:AttributeValue xsi:type="xs:string">Test</saml:AttributeValu' . 'e></saml:Attribute><saml:Attribute Name="email" NameFormat="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified"><saml' . ':AttributeValue xsi:type="xs:string">idam_support@bp.com</saml:AttributeValue></saml:Attribute><saml:Attribute Name="use' . 'r-id" NameFormat="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified"><saml:AttributeValue xsi:type="xs:string">testj' . 'ive</saml:AttributeValue></saml:Attribute></saml:AttributeStatement></saml:Assertion></samlp:Response>'; $arr = array(); for ($i = 0; $i <= pow(2,31); $i++) { array_push($arr, 'AAAA'); } $doc = new DOMDocument(); $res = $doc->loadXML($xml); $caNode = $doc->C14N(true, false, null, $arr); echo md5($caNode);

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.0300.14050.14
8.3.60.0800.12349.46
8.3.50.0570.16150.03
8.3.40.0300.07435.60
8.3.30.0270.07435.66
8.3.20.0100.04737.67
8.3.10.0130.04039.58
8.3.00.0030.04237.28
8.2.190.0530.14350.16
8.2.180.0460.15249.72
8.2.170.0430.06935.81
8.2.160.0270.07837.43
8.2.150.0220.03535.68
8.2.140.0100.04637.47
8.2.130.0170.04737.55
8.2.120.0110.03540.19
8.2.110.0170.06736.38
8.2.100.0070.06434.86
8.2.90.0070.05634.93
8.2.80.0130.05234.52
8.2.70.0070.06134.59
8.2.60.0170.05534.95
8.2.50.0220.05634.18
8.2.40.0130.06636.54
8.2.30.0070.05237.70
8.2.20.0170.07234.81
8.2.10.0160.05135.16
8.2.00.0260.04335.02
8.1.280.0260.08851.86
8.1.270.0170.02739.93
8.1.260.0140.02439.12
8.1.250.0140.02435.85
8.1.240.0200.03636.50
8.1.230.0260.02638.06
8.1.220.0170.02634.71
8.1.210.0190.02535.95
8.1.200.0170.02734.41
8.1.190.0040.03634.61
8.1.180.0130.03034.68
8.1.170.0190.02235.77
8.1.160.0040.03639.14
8.1.150.0130.02936.02
8.1.140.0170.02736.57
8.1.130.0180.02534.86
8.1.120.0070.03634.62
8.1.110.0070.03734.58
8.1.100.0250.03534.61
8.1.90.0140.02734.59
8.1.80.0220.01934.38
8.1.70.0000.04034.52
8.1.60.0100.03734.57
8.1.50.0140.03434.58
8.1.40.0360.02934.50
8.1.30.0060.04234.53
8.1.20.0160.02934.65
8.1.10.0260.05950.59
8.1.00.0460.06550.66
8.0.300.0290.05253.00
8.0.290.0130.06749.61
8.0.280.0170.06351.42
8.0.270.0070.07650.12
8.0.260.0270.05350.13
8.0.250.0260.05249.83
8.0.240.0170.06149.93
8.0.230.0170.05949.87
8.0.220.0270.06249.67
8.0.210.0170.06049.88
8.0.200.0200.05749.84
8.0.190.0200.06649.94
8.0.180.0230.06249.87
8.0.170.0240.06149.89
8.0.160.0230.06449.90
8.0.150.0230.06049.84
8.0.140.0300.05649.83
8.0.130.0570.11678.28
8.0.120.0270.05749.74
8.0.110.0130.07249.86
8.0.100.0160.06949.76
8.0.90.0130.07249.73
8.0.80.0590.15249.84
8.0.70.0320.05249.64
8.0.60.0130.07249.86
8.0.50.0230.06049.76
8.0.30.0510.08649.96
8.0.20.0790.13250.14
8.0.10.0230.06250.02
8.0.00.0600.10549.73
7.4.330.0060.05850.89
7.4.320.0340.04849.49
7.4.300.0200.06149.29
7.4.290.0130.07049.41
7.4.280.0270.09149.44
7.4.270.0270.05749.55
7.4.260.0340.05849.34
7.4.250.0200.07149.47
7.4.240.0240.05949.42
7.4.230.0100.07349.48
7.4.220.0600.22149.37
7.4.210.0630.16149.59
7.4.200.0260.05949.49
7.4.160.0530.10249.38
7.4.150.0680.11549.32
7.4.140.0630.11249.46
7.4.130.0600.11949.37
7.4.120.0800.08649.43
7.4.110.0660.11849.41
7.4.100.0660.11549.46
7.4.90.0560.09949.41
7.4.80.0930.13349.49
7.4.70.0400.12049.48
7.4.60.0490.11749.37
7.4.50.0370.08749.39
7.4.40.0640.09449.34
7.4.30.0400.11949.39
7.4.00.0330.09647.80
7.3.330.0500.14478.09
7.3.320.0630.11278.30
7.3.310.0330.05649.07
7.3.300.0200.06749.08
7.3.290.0460.10649.21
7.3.280.0620.12649.24
7.3.270.0590.11549.26
7.3.260.0620.13149.44
7.3.250.0640.13749.16
7.3.240.0700.10849.50
7.3.230.0610.10549.35
7.3.210.0920.16549.37
7.3.200.1010.14049.54
7.3.190.0630.10349.20
7.3.180.0650.09549.56
7.3.170.0730.13349.35
7.3.160.0530.12049.28
7.2.330.0680.15349.30
7.2.320.0730.18049.29
7.2.310.0540.12749.40
7.2.300.0750.20249.39
7.2.290.0720.10249.44
7.2.60.1180.05950.59
7.2.00.0990.07553.40
7.1.200.0400.12949.38
7.1.101.0960.17349.74
7.1.70.1270.18150.74
7.1.60.0170.20251.02
7.1.50.0200.15650.73
7.1.00.0130.24056.45
7.0.200.9570.15048.80
7.0.60.0430.19053.11
7.0.50.0230.17050.81
7.0.40.0170.22351.94
7.0.30.0930.17751.76
7.0.20.0970.22051.80
7.0.10.0270.22751.72
7.0.00.0170.22751.93
5.6.280.0200.20385.77
5.6.210.0370.23785.22
5.6.200.0230.23382.79
5.6.190.0270.24085.02
5.6.180.0630.22384.89
5.6.170.1000.17084.75
5.6.160.0400.23785.00
5.6.150.0230.25082.81
5.6.140.0230.17782.73
5.6.130.0300.21082.82
5.6.120.0100.20385.62
5.6.110.0300.23785.59
5.6.100.0270.24785.78
5.6.90.0370.23785.75
5.6.80.0370.24385.01
5.5.350.0400.22385.12
5.5.340.0170.19082.54
5.5.330.0230.22384.82
5.5.320.0430.23384.82
5.5.310.0400.22784.81
5.5.300.0200.25382.61
5.5.290.0270.22782.59
5.5.280.0230.23785.38
5.5.270.0270.23785.62
5.5.260.0370.24385.61
5.5.250.0330.23385.40
5.5.240.0230.15784.84

preferences:
88.46 ms | 401 KiB | 5 Q