3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array = [ ['invoice_id' => '72,', 'item' => 'SN00001'], ['invoice_id' => '73,', 'item' => 'SN00002'], ['invoice_id' => '73,', 'item' => 'SN00003'], ['invoice_id' => '73,', 'item' => 'SN00004'], ['invoice_id' => '74,', 'item' => 'SN00005'], ['invoice_id' => '74,', 'item' => 'SN00006'] ]; $result = []; foreach ($array as $row) { $result[$row['invoice_id']]['invoice_id'] = $row['invoice_id']; $result[$row['invoice_id']]['group'][] = $row; } var_export(array_values($result));
Output for 7.4.0 - 7.4.33, 8.0.1 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.26, 8.4.1 - 8.4.13
array ( 0 => array ( 'invoice_id' => '72,', 'group' => array ( 0 => array ( 'invoice_id' => '72,', 'item' => 'SN00001', ), ), ), 1 => array ( 'invoice_id' => '73,', 'group' => array ( 0 => array ( 'invoice_id' => '73,', 'item' => 'SN00002', ), 1 => array ( 'invoice_id' => '73,', 'item' => 'SN00003', ), 2 => array ( 'invoice_id' => '73,', 'item' => 'SN00004', ), ), ), 2 => array ( 'invoice_id' => '74,', 'group' => array ( 0 => array ( 'invoice_id' => '74,', 'item' => 'SN00005', ), 1 => array ( 'invoice_id' => '74,', 'item' => 'SN00006', ), ), ), )

preferences:
121.81 ms | 409 KiB | 5 Q