Sie könnten bereits in der Datenbank gruppieren oder nach Abschnitt sortieren und dann iterieren und den richtigen Trennungscode ausgeben, wenn sich der Abschnitt ändert. Ein temporäres Array ist auch eine Lösung. Angesichts Ihres Beispielcodes kann dies Sie möglicherweise auf eine mögliche Direktion hinweisen (obwohl das temporäre Array natürlich keine elegante Lösung ist, aber wenn die Daten nicht so viele sind, spielt es keine Rolle)
<?
$result = array();
$result[] = array('section' => 'php','note' => 'bla');
$result[] = array('section' => 'php','note' => 'bla');
$result[] = array('section' => 'perl','note' => 'bla');
$result[] = array('section' => 'java','note' => 'bla');
$grouped = array();
for($i=0;$i<count($result);$i++) {
$grouped[$result[$i]['section']][] = $result[$i]['note'];
}
print_r($grouped);
?>