mysqli::stmt_init()
创建一个新的预处理语句对象,该对象可用于执行一条或多条 SQL 语句
函数名称:mysqli::stmt_init()
函数描述:创建一个新的预处理语句对象
适用版本:PHP 5 >= 5.3.0, PHP 7, PHP 8
语法:mysqli_stmt mysqli::stmt_init ( void )
说明:
mysqli::stmt_init() 函数用于创建一个新的预处理语句对象,该对象可用于执行一条或多条 SQL 语句。
参数:
此函数不接受任何参数。
返回值:
成功时,返回一个 mysqli_stmt 对象,用于后续的预处理操作。
失败时,返回 false。
示例:
stmt_init();
if ($stmt) {
// 成功创建预处理语句对象
// 准备预处理语句
$query = "SELECT * FROM users WHERE id = ?";
if ($stmt->prepare($query)) {
// 成功准备预处理语句
// 绑定参数
$id = 1;
$stmt->bind_param("i", $id);
// 执行预处理语句
$stmt->execute();
// 获取结果集
$result = $stmt->get_result();
// 处理结果集
while ($row = $result->fetch_assoc()) {
// 输出每一行数据
echo "ID: " . $row['id'] . ", Name: " . $row['name'] . "
";
}
// 关闭结果集
$result->close();
// 关闭预处理语句
$stmt->close();
} else {
// 准备预处理语句失败
echo "Prepare statement failed.";
}
} else {
// 创建预处理语句对象失败
echo "Failed to create statement object.";
}
// 关闭数据库连接
$mysqli->close();
?>
以上示例演示了如何使用 mysqli::stmt_init() 函数创建一个新的预处理语句对象,并使用该对象执行一条带参数的查询语句。首先,我们使用 stmt_init() 创建一个预处理语句对象 $stmt,然后使用 prepare() 方法准备预处理语句,使用 bind_param() 方法绑定参数,使用 execute() 方法执行预处理语句,最后使用 get_result() 方法获取结果集并进行处理。注意,此示例假设已经建立了与数据库的连接,并使用 $mysqli 变量表示 mysqli 对象。