Hi!
Vermeide unnötiges Herumschaufeln von daten - was spricht dagegen, das Datenbankobjekt direkt zu verwenden? Mit kleinen Ausnahmen lassen sich Datenbankobjekte in PHP so verwenden wie Arrays.
Da ich eine saubere Trennung von Persistenz und Logik haben will, die man natürlich mit diesem Overhead bezahlt. Dafür habe ich letztendlich keinen wilden Speghetticode, wie man es sehr gut von diversen PHP-Scripts kennt.
Du musst aber auch nicht aufwendigen und wenig nachvollziehbaren Overhead einbauen.
while ($row = mysql_fetch_assoc($result)) {
//Für jeden Satz ein Array von Werte dem Array hinzufügen
$datensatz = array();
$datensatz[0] = $row["s_id"];
$datensatz[1] = $row["s_name"];
$supermaerkte[$i] = $datensatz;
Du holst dir hier ein assoziatives Array, um daraus ein nummerisches zu machen. Das kannst du einerseits einfacher mit
$supermaerkte[$i] = array($row["s_id"], $row["s_name"]);
oder
$supermaerkte[$i] = array_values(row);
oder gleich mit mysql_fetch_row() haben. Andererseits leidet die Übersichtlichkeit darunter, wenn du nur noch 0 und 1 statt sprechender Namen hast. (Wenn dir die Feldnamen des DBMS im weiteren Verlauf nicht zusagen, kannst du sie immer noch per Alias in der Abfrage umbenennen.)
Lo!