Lelaran Atas Set Keputusan MySQLi
Dalam PHP, lelaran atas hasil pertanyaan MySQL boleh dicapai menggunakan kaedah mysqli_query().
Untuk mengulangi set keputusan pertanyaan pilih uid daripada pangkalan pengguna, anda boleh menggunakan yang berikut gelung:
$output = mysqli_query($mysqli, "select uid from userbase"); foreach ($output as $row) { echo $row['uid']; }
Gelung ini akan mengambil dan memaparkan nilai uid dengan betul untuk setiap baris dalam set hasil. Ia menggunakan sintaks berorientasikan objek MySQLi, yang lebih ringkas dan cekap daripada sintaks prosedur.
Potensi Ralat
Ralat yang anda hadapi dalam kod anda mungkin disebabkan oleh penggunaan fetch_array() dengan tingkah laku lalai menjana set hasil yang mengandungi kedua-dua kunci diindeks dan bersekutu (MYSQLI_BOTH). Untuk membetulkannya, anda boleh menentukan tingkah laku yang diingini menggunakan MYSQLI_ASSOC atau MYSQLI_NUM sebagai hujah kedua untuk fetch_array().
Sebagai alternatif, anda boleh mengelak daripada menggunakan fetch_array() sama sekali dengan menggunakan mysqli_query() sebagai objek lelaran, menghapuskan keperluan untuk memanggil fetch_array() pada setiap lelaran baris.
Membetulkan Lelaran
Kod yang anda berikan juga mengandungi skema lelaran yang salah. Pembolehubah $i harus ditambah dalam gelung untuk mengakses baris berikutnya dalam set hasil, yang bermula dengan indeks 0.
Oleh itu, lelaran yang betul menggunakan fetch_array() ialah:
$i = 0; $output = mysqli_query($mysqli, "select uid from userbase"); while ($row = $output->fetch_array(MYSQLI_ASSOC)) { echo $row['uid']; $i++; }
Atas ialah kandungan terperinci Bagaimana untuk Cekap Berulang Melalui Set Keputusan MySQLi dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!