Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Mengelakkan Tatasusunan Kosong Apabila Mengambil Baris MySQL Menggunakan `mysqli_fetch_row()`?

Bagaimana untuk Mengelakkan Tatasusunan Kosong Apabila Mengambil Baris MySQL Menggunakan `mysqli_fetch_row()`?

Patricia Arquette
Patricia Arquetteasal
2024-12-26 09:34:16964semak imbas

How to Avoid Empty Arrays When Fetching MySQL Rows Using `mysqli_fetch_row()`?

Mengambil Baris daripada Objek Hasil MySQL Menggunakan mysqli

Untuk mendapatkan semua baris daripada objek hasil mysqli dan membina tatasusunan baharu untuk menyimpannya, kaedah fetch_row() boleh digunakan. Walau bagaimanapun, adalah penting untuk menangani ralat sintaks yang boleh menyebabkan tatasusunan kosong dikembalikan dan bukannya baris yang dijangkakan.

Masalah:

Dalam coretan kod yang disediakan, terdapat koma bertitik yang salah pada penghujung penyataan gelung sementara:

while($row = $result->fetch_row());

Koma bernoktah ini menamatkan gelung while lebih awal, menyebabkan tiada pelaksanaan kod dalam gelung.

Penyelesaian:

Untuk membetulkan isu ini, cuma alih keluar koma bertitik untuk membenarkan yang betul pelaksanaan gelung:

while($row = $result->fetch_row()) {
    $rows[] = $row;
}

Ralat Pelaporan:

Selain itu, adalah dinasihatkan untuk meminta MySQLi melaporkan sebarang isu yang dihadapi:

mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$sql = new mysqli($config['host'], $config['user'], $config['pass'], $config['db_name']);

$query = "SELECT domain FROM services";
$result = $sql->query($query);
$rows = [];
while($row = $result->fetch_row()) {
    $rows[] = $row;
}
return $rows;

Dengan mematuhi cadangan ini, anda sepatutnya berjaya mendapatkan dan menyimpan semua baris daripada objek hasil dalam tatasusunan $rows.

Atas ialah kandungan terperinci Bagaimana untuk Mengelakkan Tatasusunan Kosong Apabila Mengambil Baris MySQL Menggunakan `mysqli_fetch_row()`?. 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