PHP 5 及以上版本
mysqli::store_result() 函数用于从执行的查询中获取完整的结果集并将其存储在客户端。这允许多次遍历结果集以及使用数据缓冲机制。
mysqli::store_result(void): mysqli_result|false
成功时,返回 mysqli_result 对象,表示存储的结果集;失败时返回 false。
下面示例展示如何使用 mysqli::store_result() 获取查询结果并遍历显示数据。
$mysqli = new mysqli("localhost", "user", "password", "database");
$query = "SELECT id, name FROM users";
if ($mysqli->query($query)) {
$result = $mysqli->store_result();
if ($result) {
while ($row = $result->fetch_assoc()) {
echo "ID: " . $row["id"] . " Name: " . $row["name"] . "
";
}
$result->free();
} else {
echo "没有结果或发生错误。";
}
} else {
echo "查询失败: " . $mysqli->error;
}
$mysqli->close();
示例中先连接数据库,执行查询后调用 store_result() 获取完整的结果集。然后通过 fetch_assoc() 遍历结果集中的每条记录,打印出 ID 和姓名。完成后释放结果集并关闭连接。