PHP Handbuch | ||
---|---|---|
Zurück | Nach vorne |
(PHP 3, PHP 4 )
mysql_fetch_array -- Liefert einen Datensatz als assoziatives Array, als numerisches Array oder beidesLiefert ein Array das dem aktuellen Datensatz entspricht oder FALSE, wenn keine weiteren Datensätze vorliegen.
mysql_fetch_array() ist eine erweiterte Version von mysql_fetch_row(). Die Daten werden sowohl unter numerischen Indizes des Ergebnis-Arrays abgelegt, als auch unter assoziativen Indizes. Als Schlüssel für die assoziativen Indizes werden die Feldnamen benutzt.
Falls zwei oder mehrere Spalten des Ergebnisses den gleichen Feldnamen haben, dann wird nur der Wert der letzten Spalte im Array unter diesem Feldnamen abgelegt. Um auch auf die anderen gleichnamigen Spalten zugreifen zu können, müssen Sie den numerischen Index der Spalte verwenden oder einen Alias für die Spalte vergeben. Falls Sie Aliase für Spalten verwenden, können Sie auf die Inhalte dieser Spalten nicht über ihren ursprünglichen Namen zugreifen. (In folgendem Beispiel können Sie 'field' nicht benutzen).
Zu betonen ist, dass der Gebrauch von mysql_fetch_array() nicht signifikant langsamer ist als mysql_fetch_row(), obwohl die Funktion einen sichtlichen Mehrwert bietet.
Das optionale zweite Argumente Ergebnistyp in mysql_fetch_array() ist eine Konstante und kann die folgenden Werte annehmen: MYSQL_ASSOC, MYSQL_NUM und MYSQL_BOTH. Diese Eigenschaft steht seit PHP 3.0.7 zur Verfügung. MYSQL_BOTH ist der Standard für diesen Paramater.
Verwenden Sie MYSQL_BOTH, erhalten Sie ein Array mit assoziativen und numerischen Indizes. Bei MYSQL_ASSOC erhalten Sie nur aasoziative Indizes (genau wie bei mysql_fetch_assoc()). Bei MYSQL_NUM erhalten Sie nur numerische Indizes (genau wie bei mysql_fetch_row()).
Beispiel 3. mysql_fetch_array mit MYSQL_ASSOC
|
Beispiel 4. mysql_fetch_array mit MYSQL_BOTH
|
Für weitere Details, siehe auch mysql_fetch_row() und mysql_fetch_assoc()
Zurück | Zum Anfang | Nach vorne |
mysql_escape_string | Nach oben | mysql_fetch_assoc |