mysqli_stmt::bind_result
(mysqli_stmt_bind_result)将变量绑定到结果存储的预准备语句
PHP 5 >= 5.0.0, PHP 7, PHP 8
mysqli_stmt::bind_result() 函数用于将准备好的语句(prepared statement)中的结果字段绑定到变量,以便后续通过 fetch() 方法获取数据时,结果可以直接存入这些变量。
public bool mysqli_stmt::bind_result ( mixed &$var1 [, mixed &$... ] )
该函数接收一个或多个变量的引用,绑定到准备语句的结果字段上。每个绑定变量对应查询结果中的一个列。
成功返回 TRUE,失败返回 FALSE。
下面的示例演示了如何使用 mysqli_stmt::bind_result() 获取 MySQL 查询结果:
$mysqli = new mysqli("localhost", "user", "password", "database"); $stmt = $mysqli->prepare("SELECT id, name FROM users WHERE status = ?"); $status = 'active'; $stmt->bind_param("s", $status); $stmt->execute(); // 绑定结果变量 $stmt->bind_result($id, $name); // 取出结果 while ($stmt->fetch()) { echo "ID: $id, Name: $name\n"; } $stmt->close(); $mysqli->close();
此示例中,首先通过 prepare() 方法准备查询,绑定查询参数后执行。通过 bind_result() 绑定两个变量 $id 和 $name 用于存储查询结果的两列数据。使用 fetch() 方法逐行获取结果,并输出对应的 ID 和 Name。