Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Cekap Mengambil Rekod Tunggal daripada Pangkalan Data MySQLi?
Mendapatkan Rekod Tunggal daripada Pangkalan Data Menggunakan MySQLi
Mendapatkan semula baris tunggal daripada pangkalan data menggunakan MySQLi adalah berbeza daripada lelaran melalui satu siri rekod. Untuk mencapai matlamat ini, kami menggunakan kaedah pengambilan yang disediakan oleh MySQLi, menghapuskan keperluan untuk gelung.
Mengambil Baris Tunggal sebagai Tatasusunan Bersekutu
Jika kami memerlukan keseluruhan baris sebagai tatasusunan bersekutu, kita boleh menggunakan sintaks berikut:
$row = $result->fetch_assoc();
Ini menugaskan baris pertama hasil ditetapkan kepada pembolehubah $row, yang kemudiannya boleh digunakan untuk mengakses nilai lajur individu.
Mengambil Nilai Tunggal
Untuk kes di mana hanya satu nilai diperlukan, kita boleh menggunakan:
// PHP 8.1+ $value = $result->fetch_column(); // Older PHP versions $value = $result->fetch_row()[0] ?? false;
Sintaks yang terakhir menyemak nilai nol dan mengembalikan palsu jika dihadapi.
Contoh Penggunaan
Pertimbangkan contoh pertanyaan untuk mengambil baris pertama jadual "pengguna":
$sql = "SELECT * FROM users LIMIT 1"; $row = mysqli_query($conn, $sql)->fetch_assoc();
Sekarang, kami boleh mengakses nilai tertentu menggunakan $row['column_name'], seperti sebagai:
$name = $row['name']; $email = $row['email'];
Menggunakan Pembolehubah dalam Pertanyaan
Apabila menggunakan pembolehubah dalam pertanyaan SQL, adalah penting untuk menggunakan pernyataan yang disediakan untuk mengelakkan suntikan SQL. Contohnya, untuk mengambil baris berdasarkan ID tertentu:
// PHP 8.2+ $id = 123; $sql = "SELECT * FROM users WHERE id = ?"; $row = $conn->execute_query($sql, [$id])->fetch_assoc(); // Older PHP versions $id = 123; $stmt = $conn->prepare("SELECT * FROM users WHERE id = ?"); $stmt->bind_param("s", $id); $stmt->execute(); $row = $stmt->get_result()->fetch_assoc();
Atas ialah kandungan terperinci Bagaimana untuk Cekap Mengambil Rekod Tunggal daripada Pangkalan Data MySQLi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!