mysqli_stmt::reset()
重置mysqli_stmt对象的状态,以便重新执行准备好的语句
函数名称:mysqli_stmt::reset()
函数描述:该函数用于重置mysqli_stmt对象的状态,以便重新执行准备好的语句。
适用版本:PHP 5 >= 5.3.0, PHP 7
语法:bool mysqli_stmt::reset()
参数:无
返回值:如果重置成功,则返回true;否则返回false。
示例:
connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 准备SQL语句
$sql = "SELECT * FROM users WHERE age > ?";
// 创建预处理语句对象
$stmt = $conn->prepare($sql);
// 绑定参数
$stmt->bind_param("i", $age);
// 设置参数值
$age = 20;
// 执行查询
$stmt->execute();
// 获取结果集
$result = $stmt->get_result();
// 输出结果
while ($row = $result->fetch_assoc()) {
echo "ID: " . $row["id"] . ", Name: " . $row["name"] . ", Age: " . $row["age"] . "
";
}
// 重置mysqli_stmt对象的状态
$stmt->reset();
// 重新设置参数值
$age = 30;
// 再次执行查询
$stmt->execute();
// 获取结果集
$result = $stmt->get_result();
// 输出结果
while ($row = $result->fetch_assoc()) {
echo "ID: " . $row["id"] . ", Name: " . $row["name"] . ", Age: " . $row["age"] . "
";
}
// 关闭预处理语句对象
$stmt->close();
// 关闭数据库连接
$conn->close();
?>
在上面的示例中,我们首先创建了一个mysqli连接对象$conn。然后,我们准备了一个SELECT语句,并创建了一个mysqli_stmt对象$stmt来执行该语句。我们通过bind_param()函数绑定了一个参数$age。接下来,我们执行了第一次查询并输出了结果。然后,我们使用reset()函数重置了$stmt对象的状态,并重新设置了参数值$age。最后,我们再次执行查询并输出结果。
请注意,reset()函数只会重置mysqli_stmt对象的状态,并不会关闭或销毁该对象。如果您想要完全销毁mysqli_stmt对象,可以使用close()函数。