mysqli_stmt::free_result
(mysqli_stmt_free_result)释放给定语句句柄的存储结果内存
适用PHP版本:PHP 5.0.0 及以上版本
<h2>函数说明</h2>
<p>mysqli_stmt::free_result 函数用于释放由 mysqli_stmt::store_result 或 mysqli_stmt::bind_result 返回的结果集。此函数释放与当前语句相关的内存资源,尤其是在需要重新执行语句时,或者不再需要结果集时。</p>
<h2>函数语法</h2>
<p>mysqli_stmt::free_result();
$mysqli = new mysqli("localhost", "user", "password", "database");
// 准备查询语句
$stmt = $mysqli->prepare("SELECT id, name FROM users WHERE age > ?");
$stmt->bind_param("i", $age);
// 执行查询
$age = 18;
$stmt->execute();
// 存储结果集
$stmt->store_result();
// 获取结果并处理
$stmt->bind_result($id, $name);
while ($stmt->fetch()) {
echo "ID: $id, Name: $name
";
}
// 释放结果集
$stmt->free_result();
// 关闭语句
$stmt->close();
<h3>示例代码的说明:</h3>
<ul>
<li>首先,创建一个新的 MySQLi 实例连接到数据库。</li>
<li>使用 prepare() 方法准备 SQL 查询,并通过 bind_param() 绑定查询参数。</li>
<li>使用 execute() 执行查询。</li>
<li>通过 store_result() 方法存储查询结果集。</li>
<li>使用 bind_result() 方法将查询结果绑定到变量并通过 fetch() 逐行获取数据。</li>
<li>调用 free_result() 释放结果集资源。</li>
<li>最后,关闭 SQL 语句。</li>
</ul>