


`bind_result` lwn. `get_result` dalam MySQLi: Kaedah Penyata Disediakan Mana Yang Perlu Anda Pilih?
Dec 04, 2024 pm 04:30 PMbind_result vs get_result dalam Penyata Disediakan MySQL
Pernyataan yang disediakan dalam MySQLi menyediakan dua kaedah utama untuk mendapatkan semula hasil pertanyaan: bind_result dan get_result. Artikel ini membandingkan tujuan, kelebihan dan had setiap kaedah.
bind_result
Kaedah bind_result secara eksplisit mengikat pembolehubah pada lajur yang dikembalikan oleh pertanyaan. Ia memerlukan susunan pembolehubah untuk sepadan dengan struktur lajur dan biasanya digunakan apabila pertanyaan mengembalikan subset lajur tertentu.
Kebaikan:
- Serasi dengan versi PHP yang lebih lama
- Mengembalikan pembolehubah berasingan untuk setiap satu lajur
Keburukan:
- Pengikatan manual setiap pembolehubah
- Memerlukan kod tambahan untuk mengembalikan baris sebagai tatasusunan
- Kemas kini kod diperlukan jika struktur jadual perubahan
get_result
Kaedah get_result mengembalikan objek yang mengandungi keseluruhan set hasil pertanyaan. Ia memerlukan Pemacu Asli MySQL (mysqlnd) dan menawarkan fleksibiliti yang lebih besar.
Kebaikan:
- Mengembalikan tatasusunan atau objek bersekutu/dikira dengan data daripada baris yang dikembalikan
- Membenarkan mengambil semua baris yang dikembalikan sekali gus menggunakan fetch_all()
Keburukan:
- Memerlukan Pemacu Asli MySQL
Contoh: bind_result
<?php $query1 = 'SELECT id, first_name, last_name, username FROM `table` WHERE id = ?'; $id = 5; $stmt = $mysqli->prepare($query1); $stmt->bind_param('i', $id); $stmt->execute(); $stmt->store_result(); $stmt->bind_result($id, $first_name, $last_name, $username); while ($stmt->fetch()) { echo 'ID: ' . $id . '<br>'; echo 'First Name: ' . $first_name . '<br>'; echo 'Last Name: ' . $last_name . '<br>'; echo 'Username: ' . $username . '<br><br>'; } ?>
Contoh: get_result
<?php $query2 = 'SELECT * FROM `table` WHERE id = ?'; $id = 5; $stmt = $mysqli->prepare($query2); $stmt->bind_param('i', $id); $stmt->execute(); $result = $stmt->get_result(); while ($row = $result->fetch_assoc()) { echo 'ID: ' . $row['id'] . '<br>'; echo 'First Name: ' . $row['first_name'] . '<br>'; echo 'Last Name: ' . $row['last_name'] . '<br>'; echo 'Username: ' . $row['username'] . '<br><br>'; } ?>
Kesimpulan
Pilihan antara bind_result dan get_result bergantung pada keperluan khusus aplikasi. bind_result menawarkan keserasian dengan versi PHP yang lebih lama dan membolehkan pengikatan pembolehubah yang tepat, manakala get_result memberikan fleksibiliti dan menghapuskan keperluan untuk pengikatan pembolehubah manual. Walau bagaimanapun, get_result memerlukan Pemacu Asli MySQL.
Atas ialah kandungan terperinci `bind_result` lwn. `get_result` dalam MySQLi: Kaedah Penyata Disediakan Mana Yang Perlu Anda Pilih?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

11 skrip pemendek URL terbaik PHP (percuma dan premium)

Bekerja dengan Data Sesi Flash di Laravel

Respons HTTP yang dipermudahkan dalam ujian Laravel

Bina aplikasi React dengan hujung belakang Laravel: Bahagian 2, React

Curl dalam PHP: Cara Menggunakan Pelanjutan PHP Curl dalam API REST

12 skrip sembang php terbaik di codecanyon
