在 mysqli 中使用準備好的語句時,您有兩種取得結果的選項:bind_result() 和 get_result()。了解這些方法之間的差異對於優化資料庫操作至關重要。
bind_result() 將特定變數綁定到查詢結果中的列,讓您可以將它們直接指派給標量變數。當您需要查詢中的特定列時,通常會使用它。
範例:
$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);
優點:
缺點:
get_result() 以關聯數組或枚舉數組的形式檢索整個結果,並自動填充返回行中的數據。當您需要將整行作為數組處理時,它非常方便。
範例:
$query = 'SELECT * FROM table WHERE id = ?'; $id = 5; $stmt = $mysqli->prepare($query); $stmt->bind_param('i', $id); $stmt->execute(); $result = $stmt->get_result();
優點:
缺點:
兩種方法都有限制:
最佳方法取決於您的特定要求:
以上是`mysqli` 準備語句:`bind_result()` 還是 `get_result()`?的詳細內容。更多資訊請關注PHP中文網其他相關文章!