Rumah > Soal Jawab > teks badan
P粉9304480302023-08-22 21:34:58
Gunakan mysqli_fetch_row()
. Cuba ini:
$query = "SELECT ssfullname, ssemail FROM userss WHERE user_id = ".$user_id; $result = mysqli_query($conn, $query); $row = mysqli_fetch_row($result); $ssfullname = $row['ssfullname']; $ssemail = $row['ssemail'];
P粉2657249302023-08-22 12:11:29
Tidak perlu menggunakan gelung apabila hanya satu hasil yang diperlukan. Dapatkan baris secara langsung.
Jika anda perlu mendapatkan keseluruhan baris data sebagai tatasusunan bersekutu:
$row = $result->fetch_assoc();
Jika anda hanya memerlukan satu nilai, bermula dengan PHP 8.2:
$value = $result->fetch_column();
Atau untuk versi lama:
$value = $result->fetch_row()[0] ?? false;
Berikut ialah contoh lengkap kes penggunaan yang berbeza
Apabila menggunakan pembolehubah dalam pertanyaan, penyata yang disediakan mesti digunakan. Sebagai contoh, katakan kita mempunyai pembolehubah $id
:
PHP >= 8.2
// 获取单行数据 $sql = "SELECT fullname, email FROM users WHERE id=?"; $row = $conn->execute_query($query, [$id])->fetch_assoc(); // 如果只需要一个值 $sql = "SELECT count(*) FROM users WHERE id=?"; $count = $conn->execute_query($query, [$id])->fetch_column();
Versi lama PHP:
// 获取单行数据 $query = "SELECT fullname, email FROM users WHERE id=?"; $stmt = $conn->prepare($query); $stmt->bind_param("s", $id); $stmt->execute(); $result = $stmt->get_result(); $row = $result->fetch_assoc(); // 如果只需要一个值 $query = "SELECT count(*) FROM userss WHERE id=?"; $stmt = $conn->prepare($query); $stmt->bind_param("s", $id); $stmt->execute(); $result = $stmt->get_result(); $count = $result->fetch_row()[0] ?? false;
Penjelasan terperinci tentang proses di atas boleh didapati dalam artikel saya. Sebab mengapa proses ini mesti diikuti dijelaskan dalam soalan
yang terkenal iniDalam kes anda tiada pembolehubah untuk digunakan dalam pertanyaan, anda boleh menggunakan kaedah query()
:
$query = "SELECT fullname, email FROM users ORDER BY ssid"; $result = $conn->query($query); // 如果需要一个数组 $row = $result->fetch_assoc(); // 或者如果只需要一个值 $value = $result->fetch_row()[0] ?? false;