English | 简体中文 | 繁體中文
查询

mysqli::prepare()函数—用法及示例

「 准备一个SQL语句,以便后续执行 」


函数名:mysqli::prepare()

适用版本:PHP 5, PHP 7

用法: mysqli::prepare() 函数用于准备一个SQL语句,以便后续执行。它是mysqli类的一个方法,需要通过一个mysqli对象进行调用。

语法: mysqli::prepare(string $query) : mysqli_stmt

参数:

  • $query:要准备的SQL语句,可以包含占位符(如"?")。

返回值: 返回一个mysqli_stmt对象,可以用于后续绑定参数和执行查询。

示例:

// 创建mysqli对象
$mysqli = new mysqli("localhost", "username", "password", "database");

// 检查连接是否成功
if ($mysqli->connect_errno) {
    die("连接失败: " . $mysqli->connect_error);
}

// 准备SQL语句
$query = "SELECT * FROM users WHERE id = ?";

// 调用prepare方法准备语句
$stmt = $mysqli->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();
$mysqli->close();

注意事项:

  • 在调用prepare方法之前,需要先创建一个mysqli对象,并确保连接成功。
  • 占位符(如"?")用于在SQL语句中表示参数的位置,可以根据需要使用多个占位符。
  • bind_param方法用于绑定参数,第一个参数是参数类型,可以使用以下类型标识符:i(整数)、d(双精度浮点数)、s(字符串)、b(BLOB)。
  • 执行查询后,可以使用get_result方法获取结果集,然后使用fetch_assoc方法循环输出结果。
  • 最后记得关闭结果集、语句和连接,以释放资源。
补充纠错
上一个函数: mysqli::query()函数
下一个函数: mysqli::ping()函数
热门PHP函数
分享链接