3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array = Array ( '0' => Array ( 'NDC_Date' => '2017-03-27', 'NDC_Item' => '0', 'NDC_Type' => 'Night', 'NDC_Rate' => '12.00', 'NDC_Taxes' => '0', 'NDC_TaxesName' => '0', 'NDC_Quantity' => '1', 'NDC_Status' => 'NotCharged', ), '1' => Array ( 'NDC_Date' => '2017-03-28', 'NDC_Item' => '0', 'NDC_Type' => 'Night', 'NDC_Rate' => '12.00', 'NDC_Taxes' => '0', 'NDC_TaxesName' => '0', 'NDC_Quantity' => '1', 'NDC_Status' => 'NotCharged', ), '2' => Array ( 'NDC_Date' => '2017-03-29', 'NDC_Item' => '0', 'NDC_Type' => 'Test', 'NDC_Rate' => '12.00', 'NDC_Taxes' => '0', 'NDC_TaxesName' => '0', 'NDC_Quantity' => '1', 'NDC_Status' => 'NotCharged', ), '3' => Array ( 'NDC_Date' => '2017-03-30', 'NDC_Item' => '0', 'NDC_Type' => 'Test', 'NDC_Rate' => '12.00', 'NDC_Taxes' => '0', 'NDC_TaxesName' => '0', 'NDC_Quantity' => '1', 'NDC_Status' => 'NotCharged', ), '4' => Array ( 'NDC_Date' => '2017-03-31', 'NDC_Item' => '0', 'NDC_Type' => 'Night', 'NDC_Rate' => '12.00', 'NDC_Taxes' => '0', 'NDC_TaxesName' => '0', 'NDC_Quantity' => '1', 'NDC_Status' => 'NotCharged', ), '5' => Array ( 'NDC_Date' => '2017-04-01', 'NDC_Item' => '0', 'NDC_Type' => 'Night', 'NDC_Rate' => '12.00', 'NDC_Taxes' => '0', 'NDC_TaxesName' => '0', 'NDC_Quantity' => '1', 'NDC_Status' => 'NotCharged', ), '6' => Array ( 'NDC_Date' => '2017-04-02', 'NDC_Item' => '0', 'NDC_Type' => 'Night', 'NDC_Rate' => '12.00', 'NDC_Taxes' => '0', 'NDC_TaxesName' => '0', 'NDC_Quantity' => '1', 'NDC_Status' => 'NotCharged', ), '7' => Array ( 'NDC_Date' => '2017-04-03', 'NDC_Item' => '0', 'NDC_Type' => 'Night', 'NDC_Rate' => '12.00', 'NDC_Taxes' => '0', 'NDC_TaxesName' => '0', 'NDC_Quantity' => '1', 'NDC_Status' => 'NotCharged', ), ); foreach ($array as $item) { $k = $item['NDC_Type']; if (!isset($result[$k])) { $result[$k] = $item; } elseif ( ($i = $result[$k]) && $item['NDC_Rate'] === $i['NDC_Rate'] && $item['NDC_Item'] === $i['NDC_Item'] && $item['NDC_Taxes'] === $i['NDC_Taxes'] && $item['NDC_TaxesName'] === $i['NDC_TaxesName'] && $item['NDC_Quantity'] === $i['NDC_Quantity'] && $item['NDC_Status']=== $i['NDC_Status'] ) { $current_dates = explode(',', $result[$k]['NDC_Date']); $last_date = end($current_dates); if(date('Y-m-d', strtotime("{$last_date} +1 day")) === $item['NDC_Date']) { $result[$k]['NDC_Date'] .= ','. $item['NDC_Date']; } else { $result[$k. microtime()] = $item; } } else { $result[$k. microtime()] = $item; } } print_r($result);

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.2.90.0360.01115.16
7.2.80.0450.01015.02
7.2.70.1030.00915.16
7.2.60.1230.01115.41
7.2.50.0210.01215.45
7.2.40.0080.01215.21
7.2.30.0710.01015.25
7.2.20.0100.00615.23
7.2.10.0210.01115.37
7.2.00.0560.01315.44
7.1.210.0230.00014.28
7.1.200.0190.00714.14
7.1.190.1050.01014.23
7.1.180.0740.00313.96
7.1.170.0030.00914.34
7.1.160.1100.00613.94
7.1.150.0130.00514.12
7.1.140.0170.00314.27
7.1.130.0130.00714.18
7.1.120.0150.00914.09
7.1.110.0070.01414.17
7.1.100.0290.00314.32
7.1.90.0440.00614.28
7.1.80.2170.00714.05
7.1.70.0160.00014.18
7.1.60.0380.01131.97
7.1.50.0300.00931.82
7.1.40.0280.00932.30
7.1.30.0300.01332.14
7.1.20.0360.01432.13
7.1.10.0100.00314.26
7.1.00.0100.00714.04
7.0.310.0160.00813.69
7.0.300.0130.00713.69
7.0.290.0100.01313.34
7.0.280.0140.00813.50
7.0.270.0240.00913.55
7.0.260.0750.01113.64
7.0.250.0140.00713.54
7.0.240.0080.01613.50
7.0.230.2340.00413.44
7.0.220.3180.00613.38
7.0.210.0140.00913.64
7.0.200.0110.00913.58
7.0.190.0170.00213.65
7.0.180.0610.00713.45
7.0.170.0330.01213.71
7.0.160.0100.00713.57
7.0.150.0410.00913.52
7.0.140.0450.00013.73
7.0.130.0080.00813.47
7.0.120.0120.00813.74
7.0.110.0100.00513.84
7.0.100.0230.00713.79
7.0.90.0160.00813.65
7.0.80.0110.01113.74
7.0.70.1020.00013.54
7.0.60.1090.00313.68
7.0.50.0940.00313.80
7.0.40.0920.00713.52
7.0.30.0910.01613.85
7.0.20.1180.00313.67
7.0.10.0100.01013.46
7.0.00.0150.00613.85

preferences:
34.36 ms | 401 KiB | 5 Q