3v4l.org

run code in 300+ PHP versions simultaneously
<?php $products = [ [ "address" => "street 2", "product_name" => "Adidas1", ], [ "address" => "street 2", "product_name" => "Adidas2", ], [ "address" => "street 2", "product_name" => "Adidas3", ], [ "address" => "street 2", "product_name" => "Adidas4", ], [ "address" => "street name1", "product_name" => "Nike1", ], [ "address" => "street name1", "product_name" => "Nike2", ] ]; $result = []; foreach ($products as $row) { if (!isset($result[$row['address']])) { $row['product_name'] = (array)$row['product_name']; $result[$row['address']] = $row; } else { $result[$row['address']]['product_name'][] = $row['product_name']; } } var_export(array_values($result));

preferences:
170.1 ms | 405 KiB | 5 Q