Rumah >pembangunan bahagian belakang >tutorial php >Bilakah \'mysql_fetch_array()\' Benar-benar Mengembalikan Tatasusunan Semua Baris Pertanyaan?

Bilakah \'mysql_fetch_array()\' Benar-benar Mengembalikan Tatasusunan Semua Baris Pertanyaan?

Patricia Arquette
Patricia Arquetteasal
2024-10-20 14:30:29336semak imbas

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

Memahami Isu dengan mysql_fetch_array

Ralat biasa apabila menggunakan fungsi mysql_fetch_array() ialah mengandaikan ia mengembalikan tatasusunan semua baris daripada pertanyaan. Walau bagaimanapun, ia hanya mendapatkan semula satu baris, menyebabkan kekeliruan apabila cuba mengakses lebih daripada elemen pertama.

Penjelasan Kod

Kod yang disediakan cuba untuk mendapatkan artis yang namanya bermula dengan 'a', 'b' atau 'c'. Pertanyaan disimpan dalam $array dan baris pertama diambil ke dalam $array_result. Walau bagaimanapun, apabila cuba mengakses $array_result[1], ralat "undefined offset" berlaku. Ini kerana mysql_fetch_array() hanya mengembalikan baris pertama sebagai tatasusunan.

Penyelesaian: Lelaran Atas Baris

Untuk mendapatkan semua baris daripada pertanyaan, mysql_fetch_array() fungsi perlu dipanggil beberapa kali dalam satu gelung. Contohnya:

<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>

Dalam contoh ini, gelung akan mendapatkan semula dan memproses setiap baris daripada hasil pertanyaan, membenarkan kefungsian yang diingini untuk mengakses elemen daripada setiap baris.

Atas ialah kandungan terperinci Bilakah \'mysql_fetch_array()\' Benar-benar Mengembalikan Tatasusunan Semua Baris Pertanyaan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn