mysqli_stmt::$num_rows
(mysqli_stmt_num_rows)返回语句结果集中的行数
PHP 5.0.0 及以上版本
mysqli_stmt::$num_rows 是一个用于获取执行预处理语句后,结果集中返回的行数的属性。它通常在执行 SELECT 查询时使用,用来获取查询结果的数量。
int mysqli_stmt::$num_rows
该属性没有任何参数。
返回一个整数,表示结果集中的行数。如果查询没有结果,返回 0。如果语句未成功执行或出错,则返回 false。
以下示例演示如何使用 mysqli_stmt::$num_rows 属性来获取查询结果的行数:
<?php
// 创建数据库连接
$mysqli = new mysqli("localhost", "username", "password", "database");
// 检查连接是否成功
if ($mysqli->connect_error) {
die("连接失败: " . $mysqli->connect_error);
}
// 准备一个 SQL 查询语句
$stmt = $mysqli->prepare("SELECT id, name FROM users WHERE active = 1");
// 执行查询
$stmt->execute();
// 获取结果
$stmt->store_result();
// 获取查询结果的行数
echo "查询结果的行数: " . $stmt->num_rows;
// 关闭语句和连接
$stmt->close();
$mysqli->close();
?>
在这个示例中,我们首先创建一个与 MySQL 数据库的连接,并准备一个简单的 SELECT 查询,查询返回所有活跃用户。接着,我们通过调用 mysqli_stmt::execute 执行语句,并使用 store_result 将结果保存到内存中。最后,通过 mysqli_stmt::$num_rows 属性获取查询返回的行数并输出。