Heim  >  Artikel  >  Backend-Entwicklung  >  Wann gibt \'mysql_fetch_array()\' wirklich ein Array aller Abfragezeilen zurück?

Wann gibt \'mysql_fetch_array()\' wirklich ein Array aller Abfragezeilen zurück?

Patricia Arquette
Patricia ArquetteOriginal
2024-10-20 14:30:29239Durchsuche

When Does 'mysql_fetch_array()' Really Return an Array of All Query Rows?

Das Problem mit mysql_fetch_array verstehen

Ein häufiger Fehler bei der Verwendung der Funktion mysql_fetch_array() ist die Annahme, dass sie ein Array aller Zeilen von a zurückgibt Abfrage. Allerdings wird nur eine einzelne Zeile abgerufen, was zu Verwirrung führt, wenn versucht wird, auf mehr als das erste Element zuzugreifen.

Erläuterung des Codes

Der bereitgestellte Code versucht, Künstler abzurufen deren Namen mit „a“, „b“ oder „c“ beginnen. Die Abfrage wird in $array gespeichert und die erste Zeile wird in $array_result abgerufen. Beim Versuch, auf $array_result[1] zuzugreifen, tritt jedoch der Fehler „Undefinierter Offset“ auf. Dies liegt daran, dass mysql_fetch_array() nur die erste Zeile als Array zurückgibt.

Lösung: Iterieren über Zeilen

Um alle Zeilen aus der Abfrage zu erhalten, muss mysql_fetch_array() Die Funktion muss innerhalb einer Schleife mehrmals aufgerufen werden. Zum Beispiel:

<code class="php">$array = mysql_query("SELECT artist FROM directory WHERE artist LIKE 'a%' OR artist LIKE 'b%' OR artist LIKE 'c%'");

while ($data = mysql_fetch_array($array)) {
  // Output or process each row data as needed
  var_dump($data);
}</code>

In diesem Beispiel ruft die Schleife jede Zeile aus dem Abfrageergebnis ab und verarbeitet sie, wodurch die gewünschte Funktionalität des Zugriffs auf Elemente aus jeder Zeile ermöglicht wird.

Das obige ist der detaillierte Inhalt vonWann gibt \'mysql_fetch_array()\' wirklich ein Array aller Abfragezeilen zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn