首页 > 数据库 > mysql教程 > MySQLi 中的'bind_result”与'get_result”:您应该选择哪种方法?

MySQLi 中的'bind_result”与'get_result”:您应该选择哪种方法?

Patricia Arquette
发布: 2024-12-11 12:34:11
原创
1027 人浏览过

`bind_result` vs. `get_result` in MySQLi: Which Method Should You Choose?

MySQLi 中的 bind_result 与 get_result 之间的差异

MySQLi 提供了两种从查询结果中检索数据的方法:bind_result 和 get_result。每种方法都有自己的优点和缺点,概述如下。

bind_result

Bind_result 将变量绑定到查询结果中的列。如果您想处理结果中的各个值,这会很有用。

语法:

$stmt = $mysqli->prepare($query);
$stmt->bind_result($var1, $var2, $var3);
$stmt->execute();
while ($stmt->fetch()) {
    // Do something with $var1, $var2, and $var3
}
登录后复制

bind_result 的优点:

  • 适用于 PHP 5.3 和稍后
  • 为每列返回单独的变量
  • 如果只需要处理几列,比 get_result 更高效

bind_result 的缺点:

  • 需要您手动列出所有列在查询中
  • 如果需要以数组形式返回一行,可以更详细
  • 如果表结构发生变化则需要更改代码

get_result

Get_result 返回表示查询结果的对象或数组。如果您想处理整个结果,这可能比 bind_result 更方便。

语法:

$stmt = $mysqli->prepare($query);
$stmt->execute();
$result = $stmt->get_result();
while ($row = $result->fetch_assoc()) {
    // Do something with $row
}
登录后复制

get_result 的优点:

  • 返回一个关联/枚举数组或对象,自动填充返回行中的数据
  • 允许您使用 fetch_all() 方法一次检索所有返回的行

get_result 的缺点:

  • 需要 PHP 5.5 或更高版本
  • 如果您只需要处理几列,可能比 bind_result 效率低

以上是MySQLi 中的'bind_result”与'get_result”:您应该选择哪种方法?的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板