3v4l.org

run code in 300+ PHP versions simultaneously
<?php /** * Based on the following business hours: * (Note : I setup the hours for each day if they carry-over) * everyday is open from 09:00 AM - 12:00 AM * Sun/Sat open extra from 12:00 AM - 01:00 AM */ $storeSchedule = [ 'Sun' => ['12:00 AM' => '01:00 AM', '09:00 AM' => '12:00 AM'], 'Mon' => ['09:00 AM' => '12:00 AM'], 'Tue' => ['09:00 AM' => '12:00 AM'], 'Wed' => ['09:00 AM' => '12:00 AM'], 'Thu' => ['09:00 AM' => '12:00 AM'], 'Fri' => ['09:00 AM' => '12:00 AM'], 'Sat' => ['02:50 AM' => '12:00 PM'] ]; // current OR user supplied UNIX timestamp $timestamp = time(); // default status $status = 'closed'; // get current time object $currentTime = (new DateTime())->setTimestamp($timestamp); // loop through time ranges for current day foreach ($storeSchedule[date('D', $timestamp)] as $startTime => $endTime) { // create time objects from start/end times $startTime = DateTime::createFromFormat('h:i A', $startTime); $endTime = DateTime::createFromFormat('h:i A', $endTime); // check if current time is within a range if (($startTime < $currentTime) && ($currentTime < $endTime)) { $status = 'open'; break; } } echo "We are currently: $status";

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.3.10.0070.00716.77
7.3.00.0090.00816.61
7.2.130.0040.01016.88
7.2.120.0040.00817.02
7.2.110.0050.00816.89
7.2.100.0060.00817.02
7.2.90.0120.00416.99
7.2.80.0050.00817.07
7.2.70.0160.00416.96
7.2.60.0030.01216.97
7.2.50.0060.00816.95
7.2.40.0100.00717.06
7.2.30.0090.00917.13
7.2.20.0050.01217.09
7.2.10.0100.00717.09
7.2.00.0060.00917.97
7.1.250.0050.00815.88
7.1.240.0000.01115.40
7.1.230.0000.00815.62
7.1.220.0060.00615.83
7.1.210.0000.01016.00
7.1.200.0000.01315.80
7.1.190.0130.00015.96
7.1.180.0060.00615.77
7.1.170.0030.00915.66
7.1.160.0050.00315.69
7.1.150.0030.00615.94
7.1.140.0000.01015.51
7.1.130.0030.01015.99
7.1.120.0030.01015.58
7.1.110.0100.00715.92
7.1.100.0060.00417.00
7.1.90.0120.00315.67
7.1.80.0000.01415.97
7.1.70.0050.00616.65
7.1.60.0050.01417.94
7.1.50.0030.01516.43
7.1.40.0030.00716.06
7.1.30.0110.00615.77
7.1.20.0060.00916.06
7.1.10.0070.00715.46
7.1.00.0040.04319.12
7.0.330.0030.00915.36
7.0.320.0080.00315.51
7.0.310.0000.01415.07
7.0.300.0000.01015.73
7.0.290.0030.00815.20
7.0.280.0000.01315.33
7.0.270.0000.01114.98
7.0.260.0000.01515.37
7.0.250.0000.01015.71
7.0.240.0060.00615.48
7.0.230.0000.00915.50
7.0.220.0060.00615.57
7.0.210.0030.01115.52
7.0.200.0050.00716.15
7.0.190.0030.00615.07
7.0.180.0040.01115.77
7.0.170.0030.00915.52
7.0.160.0040.01115.35
7.0.150.0060.00315.52
7.0.140.0100.03718.86
7.0.130.0060.00815.40
7.0.120.0000.01315.26
7.0.110.0030.01415.39
7.0.100.0090.02917.66
7.0.90.0010.03217.57
7.0.80.0030.02617.54
7.0.70.0030.04017.85
7.0.60.0030.02717.86
7.0.50.0030.04117.98
7.0.40.0090.03516.87
7.0.30.0020.03816.96
7.0.20.0020.02516.88
7.0.10.0080.02116.85
7.0.00.0030.02416.77
5.6.380.0040.00714.80
5.6.370.0040.01114.18
5.6.360.0030.00714.44
5.6.350.0030.01014.14
5.6.340.0030.00914.66
5.6.330.0060.00314.47
5.6.320.0080.00314.09
5.6.310.0100.00714.64
5.6.300.0080.00814.64
5.6.290.0080.00314.14
5.6.280.0000.04317.71
5.6.270.0060.00314.52
5.6.260.0030.00914.38
5.6.250.0040.02617.56
5.6.240.0030.02117.51
5.6.230.0020.02117.49
5.6.220.0040.02917.50
5.6.210.0050.02717.46
5.6.200.0080.02317.76
5.6.190.0100.03617.76
5.6.180.0080.02317.74
5.6.170.0090.02317.76
5.6.160.0040.02317.87
5.6.150.0050.02817.81
5.6.140.0060.02617.77
5.6.130.0050.03317.73
5.6.120.0080.02017.81
5.6.110.0100.02517.78
5.6.100.0050.02517.84
5.6.90.0060.02417.84
5.6.80.0030.03217.40
5.6.70.0070.02017.44
5.6.60.0110.01817.46
5.6.50.0070.04417.66
5.6.40.0070.05017.25
5.6.30.0080.04217.45
5.6.20.0000.04417.33
5.6.10.0100.04417.41
5.6.00.0030.04617.30
5.5.380.0060.01815.78
5.5.370.0080.01615.91
5.5.360.0090.03415.72
5.5.350.0040.02215.65
5.5.340.0020.02716.15
5.5.330.0070.02416.02
5.5.320.0030.03115.87
5.5.310.0020.02716.07
5.5.300.0040.02916.16
5.5.290.0020.02515.97
5.5.280.0020.03716.12
5.5.270.0070.02315.98
5.5.260.0050.04016.05
5.5.250.0030.02615.90
5.5.240.0050.03515.74
5.5.230.0030.02615.66
5.5.220.0050.02915.73
5.5.210.0020.04615.70
5.5.200.0050.04015.65
5.5.190.0090.04215.78
5.5.180.0160.03315.68
5.5.170.0040.00711.24
5.5.160.0060.03815.63
5.5.150.0080.03815.78
5.5.140.0020.04615.73
5.5.130.0070.04215.69
5.5.120.0050.03915.70
5.5.110.0080.04615.79
5.5.100.0050.03915.55
5.5.90.0000.04815.46
5.5.80.0100.04015.63
5.5.70.0100.03515.49
5.5.60.0050.03215.61
5.5.50.0070.04015.76
5.5.40.0050.04115.56
5.5.30.0050.03815.60
5.5.20.0070.02415.68
5.5.10.0060.04315.54
5.5.00.0070.04215.45
5.4.450.0030.02515.30
5.4.440.0020.02415.31
5.4.430.0030.02115.21
5.4.420.0050.01815.28
5.4.410.0020.02415.29
5.4.400.0060.02115.05
5.4.390.0070.01915.13
5.4.380.0010.02314.97
5.4.370.0040.04615.04
5.4.360.0060.02615.11
5.4.350.0070.04015.03
5.4.340.0050.04515.10
5.4.330.0030.00911.29
5.4.320.0050.04514.88
5.4.310.0030.04215.15
5.4.300.0060.04115.10
5.4.290.0030.04015.11
5.4.280.0070.04015.12
5.4.270.0070.03514.96
5.4.260.0120.03014.83
5.4.250.0080.02115.15
5.4.240.0080.04015.19
5.4.230.0080.03715.16
5.4.220.0000.04615.02
5.4.210.0050.04215.17
5.4.200.0070.03715.05
5.4.190.0050.04515.18
5.4.180.0080.03914.97
5.4.170.0070.03015.04
5.4.160.0050.03815.02
5.4.150.0000.02615.00
5.4.140.0030.04013.75
5.4.130.0020.03013.73
5.4.120.0100.03313.79
5.4.110.0070.02813.92
5.4.100.0040.04013.84
5.4.90.0020.04313.71
5.4.80.0100.03613.75
5.4.70.0050.04013.94
5.4.60.0030.04113.85
5.4.50.0130.02513.73
5.4.40.0080.03813.78
5.4.30.0000.03613.80
5.4.20.0050.04113.81
5.4.10.0090.03813.74
5.4.00.0040.03913.50
5.3.290.0050.04212.46
5.3.280.0060.04112.42
5.3.270.0090.03912.41
5.3.260.0020.04212.35
5.3.250.0060.01812.42
5.3.240.0050.04212.42
5.3.230.0070.02312.42
5.3.220.0030.04012.38
5.3.210.0070.03912.39
5.3.200.0080.03712.39
5.3.190.0070.03712.41
5.3.180.0110.03512.44
5.3.170.0050.03012.40
5.3.160.0080.03512.40
5.3.150.0050.03812.35
5.3.140.0030.03912.43
5.3.130.0050.03312.37
5.3.120.0050.04212.38
5.3.110.0030.03912.41
5.3.100.0070.03212.15
5.3.90.0030.03812.20
5.3.80.0030.04512.12
5.3.70.0070.04012.07
5.3.60.0100.03112.01
5.3.50.0050.02612.10
5.3.40.0030.03312.09
5.3.30.0110.02012.08
5.3.20.0080.03211.86
5.3.10.0050.03911.83
5.3.00.0070.03711.87
5.2.170.0020.03910.62
5.2.160.0020.02410.72
5.2.150.0050.03510.69
5.2.140.0050.01510.62
5.2.130.0020.03310.67
5.2.120.0030.02110.60
5.2.110.0070.03110.71
5.2.100.0020.03510.71
5.2.90.0070.02810.70
5.2.80.0030.03410.66
5.2.70.0050.03410.66
5.2.60.0020.03410.57
5.2.50.0080.03010.61
5.2.40.0070.03210.62
5.2.30.0020.02710.64
5.2.20.0040.02910.53
5.2.10.0000.03310.59
5.2.00.0050.03010.52
5.1.60.0040.02710.52
5.1.50.0050.02810.52
5.1.40.0050.02610.52
5.1.30.0030.03310.52
5.1.20.0020.03010.52
5.1.10.0030.02510.52
5.1.00.0030.03010.52
5.0.50.0030.02310.52
5.0.40.0030.02010.52
5.0.30.0030.03010.52
5.0.20.0000.02210.52
5.0.10.0050.02110.52
5.0.00.0030.01910.52
4.4.90.0030.01510.52
4.4.80.0020.02010.52
4.4.70.0000.02210.52
4.4.60.0010.02010.52
4.4.50.0030.02010.52
4.4.40.0000.02110.52
4.4.30.0050.01310.52
4.4.20.0020.02010.52
4.4.10.0000.01010.52
4.4.00.0050.01510.52
4.3.110.0030.01810.52
4.3.100.0000.02010.52
4.3.90.0020.01810.52
4.3.80.0070.02510.52
4.3.70.0020.01410.52
4.3.60.0020.02110.52
4.3.50.0030.01810.52
4.3.40.0020.02810.52
4.3.30.0030.01510.52
4.3.20.0000.01910.52
4.3.10.0010.01810.52
4.3.00.0020.01810.52

preferences:
34.96 ms | 401 KiB | 5 Q