Heim  >  Artikel  >  Datenbank  >  Warum gibt mein „mysql_fetch_array' doppelte Daten zurück?

Warum gibt mein „mysql_fetch_array' doppelte Daten zurück?

DDD
DDDOriginal
2024-10-31 07:54:30396Durchsuche

Why is my `mysql_fetch_array` returning duplicate data?

Doppelte Ergebnisse mit mysql_fetch_array

Im bereitgestellten Code führen Sie eine Abfrage aus, um Personaldaten basierend auf einer ID abzurufen und das Ergebnis als zurückzugeben ein assoziatives Array. Wenn Sie jedoch das Array durchlaufen und seine Werte ausgeben, stoßen Sie auf doppelte Daten.

Das liegt daran, dass mysql_fetch_array standardmäßig sowohl den assoziativen als auch den numerischen Schlüssel abruft. Jedes Schlüssel-Wert-Paar wird zweimal angezeigt, was zu der von Ihnen beobachteten doppelten Ausgabe führt.

Lösung:

Um nur die assoziativen Schlüssel abzurufen, verwenden Sie mysql_fetch_assoc anstelle von mysql_fetch_array. Auf diese Weise beschränken Sie das zurückgegebene Array darauf, nur assoziative Schlüssel zu enthalten, und ordnen die Spaltennamen den jeweiligen Werten zu. Dadurch wird das Problem der doppelten Ausgabe behoben:

<code class="php">$query_result_array = mysql_fetch_assoc($query_result);</code>

Alternativ können Sie den zweiten Parameter von mysql_fetch_array angeben, um entweder nur assoziative oder numerische Schlüssel abzurufen:

<code class="php">$query_result_array = mysql_fetch_array($query_result, MYSQL_ASSOC); // associative keys only
$query_result_array = mysql_fetch_array($query_result, MYSQL_NUM); // numeric keys only</code>

Durch Verwendung von mysql_fetch_assoc oder Setting Wenn Sie den zweiten Parameter entsprechend anpassen, können Sie die doppelten Daten entfernen und eine einzelne Instanz jedes Wertes im Assoziativwert erhalten Array.

Das obige ist der detaillierte Inhalt vonWarum gibt mein „mysql_fetch_array' doppelte Daten 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