使用 PHP 在 MySQL 中处理准备好的语句时,开发人员有两种检索查询结果的选项:bind_result() 和 get_result()。本文深入探讨了每种方法的目的、实现以及优缺点。
bind_result() 允许您绑定特定变量到查询结果中的列。这需要显式列出查询中的列。
$query = "SELECT id, first_name, last_name, username 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, $username);
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();
bind_result()
优点:
缺点:
get_result()
优点:
缺点:
结论
bind_result() 和 get_result() 之间的选择取决于应用程序的具体需求。 bind_result() 可以更好地控制各个结果变量,而 get_result() 可以在处理结果行时提供便利和灵活性。
以上是MySQLi 中的 `bind_result()` 与 `get_result()`:您应该选择哪种方法?的详细内容。更多信息请关注PHP中文网其他相关文章!