Rumah >pembangunan bahagian belakang >tutorial php >Bilakah \'mysql_fetch_array()\' Benar-benar Mengembalikan Tatasusunan Semua Baris Pertanyaan?
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!