3v4l.org

run code in 300+ PHP versions simultaneously
<?php $source = [ [ "mail_id" => "29848947", "last_name" => "Doe", "first_name" => "Jon", "email" => "jdoe@gmail.com", "status" => "opened" ], [ "mail_id" => "340980398", "last_name" => "Doe", "first_name" => "Jane", "email" => "janedoe@gmail.com", "status" => "sent" ], [ "mail_id" => "877586", "last_name" => "Dwaye", "first_name" => "Jhon", "email" => "Jhondw@yahoo.com", "status" => "clicked" ], [ "mail_id" => "225253463", "last_name" => "Doe", "first_name" => "Jon", "email" => "jdoe@gmail.com", "status" => "opened" ], [ "mail_id" => "849849w4", "last_name" => "Doe", "first_name" => "Jane", "email" => "janedoe@gmail.com", "status" => "sent" ] ]; $result = array_map(function($email) use($source) { $events = array_values(array_filter($source, function($event) use($email) { return $event['email'] == $email; })); return [ "first_name" => $events[0]["first_name"], "last_name" => $events[0]["last_name"], "email" => $email, "opened" => count(array_filter($events, function($event) { return $event["status"] == "opened"; })), "blocked" => count(array_filter($events, function($event) { return $event["status"] == "blocked"; })), "hard_bounced" => count(array_filter($events, function($event) { return $event["status"] == "hard_bounced"; })), "soft_bounced" => count(array_filter($events, function($event) { return $event["status"] == "soft_bounced"; })), "sent" => count(array_filter($events, function($event) { return $event["status"] == "sent"; })), "clicked" => count(array_filter($events, function($event) { return $event["status"] == "clicked"; })), ]; }, array_unique(array_column($source, "email"))); 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)
8.3.70.0100.01018.43
8.3.60.0140.00718.50
8.3.50.0110.01116.34
8.3.40.0040.01118.74
8.3.30.0090.00618.71
8.3.20.0080.00021.81
8.3.10.0070.00023.48
8.3.00.0050.00320.71
8.2.190.0110.00720.21
8.2.180.0090.01216.63
8.2.170.0110.00422.96
8.2.160.0130.00321.23
8.2.150.0000.00824.18
8.2.140.0040.00424.66
8.2.130.0070.00019.28
8.2.120.0070.00026.35
8.2.110.0060.00322.25
8.2.100.0080.00417.91
8.2.90.0040.00422.32
8.2.80.0040.00419.40
8.2.70.0050.00317.93
8.2.60.0030.00618.16
8.2.50.0030.00618.10
8.2.40.0000.00819.35
8.2.30.0070.00019.24
8.2.20.0080.00018.17
8.2.10.0020.00519.39
8.2.00.0050.00219.31
8.1.280.0090.00925.92
8.1.270.0060.00318.92
8.1.260.0030.00526.35
8.1.250.0040.00428.09
8.1.240.0040.00422.59
8.1.230.0080.00320.90
8.1.220.0040.00417.88
8.1.210.0030.00518.88
8.1.200.0060.00317.35
8.1.190.0040.00417.35
8.1.180.0000.00818.10
8.1.170.0050.00217.62
8.1.160.0090.00020.67
8.1.150.0090.00318.95
8.1.140.0050.00322.16
8.1.130.0030.00320.15
8.1.120.0040.00417.39
8.1.110.0000.00817.50
8.1.100.0080.00017.48
8.1.90.0000.00817.46
8.1.80.0040.00417.45
8.1.70.0040.00417.47
8.1.60.0040.00417.48
8.1.50.0000.01017.46
8.1.40.0090.00017.54
8.1.30.0050.00217.71
8.1.20.0000.00817.61
8.1.10.0000.00817.45
8.1.00.0080.00017.41
8.0.300.0070.00020.03
8.0.290.0070.00016.75
8.0.280.0050.00218.45
8.0.270.0000.00716.82
8.0.260.0040.00418.45
8.0.250.0000.00716.95
8.0.240.0030.00516.96
8.0.230.0040.00416.93
8.0.220.0030.00616.79
8.0.210.0000.00716.85
8.0.200.0000.00716.96
8.0.190.0050.00316.86
8.0.180.0070.00016.93
8.0.170.0050.00316.84
8.0.160.0000.00716.82
8.0.150.0000.00816.88
8.0.140.0070.00016.88
8.0.130.0000.00513.34
8.0.120.0050.00316.81
8.0.110.0000.00816.71
8.0.100.0040.00416.90
8.0.90.0000.00816.94
8.0.80.0080.00916.93
8.0.70.0000.00716.97
8.0.60.0050.00216.93
8.0.50.0060.00316.95
8.0.30.0090.00917.01
8.0.20.0110.00717.16
8.0.10.0020.00517.00
8.0.00.0110.00716.69
7.4.330.0030.00315.55
7.4.320.0000.00616.53
7.4.300.0030.00316.59
7.4.290.0000.00716.59
7.4.280.0080.00016.55
7.4.270.0000.00816.66
7.4.260.0060.00316.61
7.4.250.0090.00016.43
7.4.240.0000.00716.54
7.4.230.0030.00416.63
7.4.220.0030.00516.59
7.4.210.0080.00616.59
7.4.200.0070.00016.63
7.4.160.0080.00916.52
7.4.140.0110.00717.86
7.4.130.0090.00916.50
7.4.120.0150.00816.58
7.4.110.0070.01016.56
7.4.100.0100.01316.68
7.4.90.0140.00316.49
7.4.80.0100.00619.39
7.4.70.0130.00416.35
7.4.60.0000.01516.56
7.4.50.0120.00316.64
7.4.40.0070.01116.41
7.4.00.0060.00915.08
7.3.330.0030.00313.16
7.3.320.0000.00613.27
7.3.310.0040.00416.36
7.3.300.0070.00016.24
7.3.290.0050.00316.25
7.3.280.0090.00716.36
7.3.260.0100.00816.50
7.3.240.0110.00716.53
7.3.230.0030.01616.45
7.3.210.0060.01616.37
7.3.200.0100.00716.47
7.3.190.0100.01116.59
7.3.180.0070.01016.32
7.3.170.0090.01216.37
7.3.160.0150.00316.50
7.3.10.0120.00016.45
7.3.00.0410.00615.26
7.2.330.0130.00316.65
7.2.320.0070.01216.68
7.2.310.0190.00316.51
7.2.300.0070.01016.68
7.2.290.0030.01316.60
7.2.130.0300.00215.88
7.2.120.0350.01015.91
7.2.110.0350.00815.61
7.2.100.0440.00615.63
7.2.90.0240.01215.77
7.2.80.0310.00815.82
7.2.70.0280.01215.86
7.2.60.0660.00815.64
7.2.50.0310.00715.92
7.2.40.0290.01015.92
7.2.30.0260.00815.85
7.2.20.0280.00315.90
7.2.10.0340.00515.63
7.2.00.0250.00615.88
7.1.250.0340.01014.93

preferences:
40.51 ms | 401 KiB | 5 Q