3v4l.org

run code in 300+ PHP versions simultaneously
<?php $sampleArray = [ ["id" => 0.1, "marks" => 2], ["id" => 0.2, "marks" => 4], ["id" => 0.3, "marks" => 1], ["id" => 1.1, "marks" => 6], ["id" => 1.2, "marks" => 0], ["id" => 1.8, "marks" => 8], ["id" => 2.1, "marks" => 7], ["id" => 2.2, "marks" => 12], ]; $result = []; foreach ($sampleArray as $row) { if ($result && !isset($result[$row['id']])) { // $result is not empty and current id is not yet in output array $lastKey = array_key_last($result); echo "Sum of ID $lastKey is {$result[$lastKey]}<br><br>"; } echo "id: {$row['id']}, marks: {$row['marks']}<br>"; $result[$row['id']] = ($result[$row['id']] ?? 0) + $row['marks']; } if ($result) { $lastKey = array_key_last($result); echo "Sum of ID $lastKey is {$result[$lastKey]}"; }
Output for git.master, git.master_jit, rfc.property-hooks
id: 0.1, marks: 2<br> Deprecated: Implicit conversion from float 0.1 to int loses precision in /in/aT4eU on line 21 Deprecated: Implicit conversion from float 0.1 to int loses precision in /in/aT4eU on line 21 Deprecated: Implicit conversion from float 0.2 to int loses precision in /in/aT4eU on line 16 id: 0.2, marks: 4<br> Deprecated: Implicit conversion from float 0.2 to int loses precision in /in/aT4eU on line 21 Deprecated: Implicit conversion from float 0.2 to int loses precision in /in/aT4eU on line 21 Deprecated: Implicit conversion from float 0.3 to int loses precision in /in/aT4eU on line 16 id: 0.3, marks: 1<br> Deprecated: Implicit conversion from float 0.3 to int loses precision in /in/aT4eU on line 21 Deprecated: Implicit conversion from float 0.3 to int loses precision in /in/aT4eU on line 21 Deprecated: Implicit conversion from float 1.1 to int loses precision in /in/aT4eU on line 16 Sum of ID 0 is 7<br><br>id: 1.1, marks: 6<br> Deprecated: Implicit conversion from float 1.1 to int loses precision in /in/aT4eU on line 21 Deprecated: Implicit conversion from float 1.1 to int loses precision in /in/aT4eU on line 21 Deprecated: Implicit conversion from float 1.2 to int loses precision in /in/aT4eU on line 16 id: 1.2, marks: 0<br> Deprecated: Implicit conversion from float 1.2 to int loses precision in /in/aT4eU on line 21 Deprecated: Implicit conversion from float 1.2 to int loses precision in /in/aT4eU on line 21 Deprecated: Implicit conversion from float 1.8 to int loses precision in /in/aT4eU on line 16 id: 1.8, marks: 8<br> Deprecated: Implicit conversion from float 1.8 to int loses precision in /in/aT4eU on line 21 Deprecated: Implicit conversion from float 1.8 to int loses precision in /in/aT4eU on line 21 Deprecated: Implicit conversion from float 2.1 to int loses precision in /in/aT4eU on line 16 Sum of ID 1 is 14<br><br>id: 2.1, marks: 7<br> Deprecated: Implicit conversion from float 2.1 to int loses precision in /in/aT4eU on line 21 Deprecated: Implicit conversion from float 2.1 to int loses precision in /in/aT4eU on line 21 Deprecated: Implicit conversion from float 2.2 to int loses precision in /in/aT4eU on line 16 id: 2.2, marks: 12<br> Deprecated: Implicit conversion from float 2.2 to int loses precision in /in/aT4eU on line 21 Deprecated: Implicit conversion from float 2.2 to int loses precision in /in/aT4eU on line 21 Sum of ID 2 is 19

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
98.68 ms | 415 KiB | 5 Q