3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array = [ ['quantity' => 5, 'dd' => '01-Nov-2012'], ['quantity' => 10, 'dd' => '01-Nov-2012'], ['quantity' => 3, 'dd' => '02-Nov-2012'], ['quantity' => 4, 'dd' => '03-Nov-2012'], ['quantity' => 15, 'dd' => '03-Nov-2012'], ]; var_export( array_reduce( $array, function($result, $row) { static $ref = []; if (!isset($ref[$row['dd']])) { $ref[$row['dd']] = $row; $result[] = &$ref[$row['dd']]; } else { $ref[$row['dd']]['quantity'] += $row['quantity']; } return $result; } ) );

preferences:
60.93 ms | 405 KiB | 5 Q