Auge: Datensatz aus Datenbank in array schreiben

Beitrag lesen

Hallo

// Zähler für das Array

$i = 0;
while ($row = mysql_fetch_assoc($result))
  {
  // Zuweisung
  $ausgabe[$i]['id'] = $row['id'];
  $ausgabe[$i]['name'] = $row['name'];
  $ausgabe[$i]['ort'] = $row['ort'];
  $ausgabe[$i]['land'] = $row['land'];
  // Zähler für den nächsten Durchlauf um 1 erhöhen
  $i++;
  }


> >   
> > Ist das dein Ernst? Damit gewinnst du bestimmt den Preis für die aufwändigste Problemlösung ....  
>   
> > ~~~php

while ($row = mysql_fetch_assoc($result)){  

> > 	// Zuweisung  
> > 	$ausgabe[] = $row;  
> > }

Macht exakt das Gleiche aber wesentlich kürzer.

Macht nicht ganz das Gleiche.

Was macht es denn anders? Sowohl mein als auch Ms Code erzeugen ein identisches Array. Seiner eleganter als meiner, dafür sieht bei meinem ein Blinder was da geschieht. :-)

Besser wäre daher:

while ($_row = mysql_fetch_assoc($result))

{
    $_ausgabeliste[$_row['id']] = $_row;
}


>   
> Selbstverständlich kann man die Redundanz mit einer Zeile mehr auch wieder entfernen:  
>   
> ~~~php

while ($_row = mysql_fetch_assoc($result))  

> {  
>     $_ausgabeliste[$_row['id']] = $_row;  
>     unset($_ausgabeliste[$_row['id']]['id'];  
> }

Wäre es, einer einheitlichen Struktur wegen, nicht sinnvoller, auf die Verwendung von $ausgabe[]['id'] umzusteigen? Die anderen Felder sind ja auch so erreichbar.

Tschö, Auge

--
Verschiedene Glocken läuteten in der Stadt, und jede von ihnen vertrat eine ganz persönliche Meinung darüber, wann es Mitternacht war.
Terry Pratchett, "Wachen! Wachen!"
ie:{ fl:| br:> va:) ls:[ fo:) rl:( ss:| de:> js:| zu:}
Veranstaltungsdatenbank Vdb 0.3