函数名:mysqli_stmt::bind_param()
适用版本:PHP 5, PHP 7
用法:mysqli_stmt::bind_param() 函数用于将变量与预处理语句中的参数进行绑定。它接受一个或多个参数,并将它们绑定到指定的预处理语句中的占位符。
语法:bool mysqli_stmt::bind_param(string $types, mixed &$var1 [, mixed &$... ])
参数:
$types
:一个字符串,指定参数绑定的类型。它由以下字符组成:- i:整数
- d:双精度浮点数
- s:字符串
- b:blob
&$var1 [, &$var2 [, &$... ]]
:一个或多个引用参数,用于指定要绑定的变量。变量的数量必须与$types
中的占位符数量相匹配。
返回值:成功时返回 true,失败时返回 false。
示例:
// 创建预处理语句
$stmt = $mysqli->prepare("INSERT INTO users (name, age) VALUES (?, ?)");
if ($stmt === false) {
die("预处理语句创建失败:" . $mysqli->error);
}
// 绑定参数
$name = "John Doe";
$age = 25;
if (!$stmt->bind_param("si", $name, $age)) {
die("参数绑定失败:" . $stmt->error);
}
// 执行预处理语句
if (!$stmt->execute()) {
die("执行预处理语句失败:" . $stmt->error);
}
// 关闭预处理语句
$stmt->close();
在上面的示例中,我们首先创建了一个预处理语句,然后使用 bind_param()
函数将两个变量 $name
和 $age
绑定到预处理语句中的占位符 ?
。接下来,我们执行了预处理语句,将变量的值插入到数据库表中。最后,我们关闭了预处理语句。
请注意,bind_param()
函数中的参数 $types
指定了绑定的类型。在本例中,我们使用了 "si",表示第一个参数是字符串,第二个参数是整数。