Tôi nghĩ nếu tôi làm điều này, tôi sẽ tạo một hàm để thu thập các nhà cung cấp và các mặt hàng của họ, sau đó lặp qua chúng để hiển thị, đại loại như:
function getVendors()
{
foreach($_SESSION["products"] as $product) {
$org[$product["postbyvendor"]][] = $product["productname"];
}
return (!empty($org))? $org : array();
}
foreach(getVendors() as $vendor => $prods) {
echo "<li>{$vendor}</li>";
echo "<li>".implode("</li><li>",$prods)."</li>";
}