在PHP 中,有兩種不同的方法從MySQL 資料庫擷取查詢結果:bind_result() 和get_result( ) 。了解這些方法之間的差異可以優化您的程式碼效能和結果處理。
bind_result() 明確列出要在查詢中綁定的列,從而為每個列產生單獨的變數列。
使用範例bind_result():
<?php $query = 'SELECT id, first_name, last_name FROM `table` WHERE id = ?'; $id = 5; $stmt = $mysqli->prepare($query); $stmt->bind_param('i',$id); $stmt->execute(); $stmt->store_result(); $stmt->bind_result($id, $first_name, $last_name); while ($stmt->fetch()) { //... } ?>
優點:
為每個版本傳回單獨的變數列
Get_result()get_result() 自動傳回表示檢索到的行的關聯或枚舉陣列或物件。
<?php $query = 'SELECT * FROM `table` WHERE id = ?'; $id = 5; $stmt = $mysqli->prepare($query); $stmt->bind_param('i',$id); $stmt->execute(); $result = $stmt->get_result(); while ($row = $result->fetch_assoc()) { //... } ?>
示例使用get_result():
簡化結果處理
Feature | bind_result() | get_result() |
---|---|---|
Result Handling | Separate variables | Associative/enumerated array or object |
MySQL Driver | Older versions supported | Requires mysqlnd |
Code Maintenance | Manual updates required | Automatic result filling |
Result Fetching | Individual rows | All rows at once |
以上是`bind_result()` 與 `get_result()`:您應該選擇哪一種 PHP MySQL 結果綁定策略?的詳細內容。更多資訊請關注PHP中文網其他相關文章!