3v4l.org

run code in 300+ PHP versions simultaneously
<?php $date="2017-09-11"; $time = 0; $loops = 1000; for ($i = 0; $i < $loops; $i++) { $time1 = round(microtime(true) * 1000, 8); preg_match("/^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])$/",$date); $time2 = round(microtime(true) * 1000, 8); $time = $time + ($time2 - $time1); } echo 'preg: ' . ($time / $loops) . PHP_EOL; $time = 0; $loops = 1000; for ($i = 0; $i < $loops; $i++) { $time1 = round(microtime(true) * 1000, 8); DateTime::createFromFormat("Y-m-d", $date); $time2 = round(microtime(true) * 1000, 8); $time = $time + ($time2 - $time1); } echo 'DateTime: ' . ($time / $loops);

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.2.100.0220.00717.92
7.4.00.0110.00715.43
7.3.120.0090.00915.15
7.3.110.0030.02015.23
7.3.100.0070.00715.30
7.3.90.0040.01415.32
7.3.80.0000.01815.41
7.3.70.0100.01015.02
7.3.60.0100.00715.09
7.3.50.0070.01015.16
7.3.40.0000.01715.22
7.3.30.0030.01015.21
7.3.20.0040.01117.00
7.3.10.0130.00816.96
7.3.00.0040.01816.99
7.2.250.0140.01015.30
7.2.240.0070.01315.34
7.2.230.0030.01715.05
7.2.220.0070.00715.28
7.2.210.0030.01315.21
7.2.200.0070.01415.50
7.2.190.0040.01115.15
7.2.180.0060.01215.45
7.2.170.0130.00615.20
7.2.130.0100.01317.18
7.2.120.0130.01017.01
7.2.110.0120.01317.17
7.2.100.0110.01017.10
7.2.90.0110.01417.16
7.2.80.0100.01117.12
7.2.70.0090.01617.06
7.2.60.0050.01116.89
7.2.50.0020.02217.04
7.2.40.0020.01517.06
7.2.30.0080.01517.21
7.2.20.0110.01217.08
7.2.10.0080.01117.21
7.2.00.0050.01617.25
7.1.330.0060.01515.96
7.1.320.0100.00716.24
7.1.310.0080.00816.14
7.1.300.0070.00715.99
7.1.290.0100.01016.30
7.1.280.0070.01415.80
7.1.270.0040.01116.15
7.1.260.0040.00816.20
7.1.250.0100.01615.87
7.1.100.0060.01818.43
7.1.90.0050.01818.33
7.1.80.0070.01518.52
7.1.70.0030.01917.30
7.1.60.0230.01835.35
7.1.50.0220.01635.19
7.1.40.0170.02234.81
7.1.30.0160.02434.86
7.1.20.0180.02134.88
7.1.10.0060.01816.96
7.1.00.0110.01117.32
7.0.240.0060.01918.33
7.0.230.0080.01518.21
7.0.220.0090.01618.04
7.0.210.0050.02016.87
7.0.200.0060.01617.23
7.0.190.0080.01517.05
7.0.180.0060.01916.55
7.0.170.0030.02216.53
7.0.160.0120.01316.48
7.0.150.0050.01716.65
7.0.140.0040.01916.72
7.0.130.0030.02016.71
7.0.120.0070.01516.88
7.0.110.0070.01616.70
7.0.100.0060.01516.56
7.0.90.0030.01616.70
7.0.80.0090.01416.74
7.0.70.0050.01616.64
7.0.60.0070.01616.56
7.0.50.0100.01416.75
7.0.40.0090.01416.65
7.0.30.0020.02316.88
7.0.20.0050.01616.53
7.0.10.0080.01316.64
7.0.00.0070.01316.68

preferences:
42.75 ms | 403 KiB | 5 Q