欢迎访问宙启技术站
智能推送

如何使用PHP的mysqli_num_rows函数获取查询结果的行数?

发布时间:2023-06-18 17:09:16

使用PHP的mysqli_num_rows函数可以获取查询结果的行数。mysqli_num_rows函数可以返回查询结果集中的记录行数。

下面是一个简单的例子,使用PHP的mysqli连接对象,查询一个表中的记录行数:

<?php

//创建连接对象

$conn = new mysqli("localhost", "root", "password", "mydb");

//检查连接是否成功

if ($conn->connect_error) {

    die("连接失败: " . $conn->connect_error);

}

//查询表中的记录行数

$sql = "SELECT COUNT(*) FROM mytable";

$result = $conn->query($sql);

//输出记录行数

if ($result->num_rows > 0) {

    $row = $result->fetch_assoc();

    echo "记录行数:" . $row["COUNT(*)"];

} else {

    echo "没有数据!";

}

//关闭连接

$conn->close();

?>

在上面的例子中,首先创建了一个mysqli连接对象。然后使用mysqli_query函数来执行查询语句,将结果集保存在$result变量中。接着使用mysqli_num_rows函数获取查询结果集的行数,并将其输出到屏幕上。

需要注意的是,在查询语句中使用COUNT(*)函数来统计记录行数。因为COUNT(*)函数会统计表中的所有记录行数,所以不需要指定任何列名。

如果结果集中没有任何记录,那么mysqli_num_rows函数将返回0,表示查询结果为空。因此,在判断结果集是否为空之前,需要先调用mysqli_num_rows函数。

在实际开发中,可以将查询语句封装成一个函数,以便在需要查询记录数的地方直接调用。例如:

<?php

function get_record_count($table_name) {

    $conn = new mysqli("localhost", "root", "password", "mydb");

    if ($conn->connect_error) {

        die("连接失败: " . $conn->connect_error);

    }

    $sql = "SELECT COUNT(*) FROM {$table_name}";

    $result = $conn->query($sql);

    if ($result->num_rows > 0) {

        $row = $result->fetch_assoc();

        $count = $row["COUNT(*)"];

    } else {

        $count = 0;

    }

    $conn->close();

    return $count;

}

?>

在上面的代码中,get_record_count函数用于获取指定表中的记录行数。传入表名作为参数,调用mysqli_query函数执行查询语句,并返回记录行数。函数返回值可以直接用于分页处理等操作。