当前位置: 首页> 最新文章列表> 使用 mysqli_result::fetch_row() 获取数值索引数组

使用 mysqli_result::fetch_row() 获取数值索引数组

M66 2025-05-28

在 PHP 中,使用 MySQL 数据库时,通常会用 mysqli 扩展来执行数据库操作。mysqli_result::fetch_row() 方法是从数据库查询结果集中获取一行数据的常见方法之一。它返回一个数值索引数组,其中每个值对应于 SQL 查询中返回的一列数据。

接下来,我们将详细介绍如何使用 mysqli_result::fetch_row() 来从查询结果中提取数值索引数组,并演示如何在代码中实现这一点。

什么是 mysqli_result::fetch_row()

mysqli_result::fetch_row()mysqli 类中一个非常有用的方法。它从结果集中获取一行数据,并以数值索引数组的形式返回该行中的所有列。与 fetch_assoc() 返回关联数组不同,fetch_row() 只返回一个由数字索引组成的数组。

使用 mysqli_result::fetch_row() 获取数值索引数组

以下是一个简单的例子,展示了如何使用 mysqli_result::fetch_row() 从查询结果中获取数值索引数组:

<?php
// 创建连接
$mysqli = new mysqli("localhost", "用户名", "密码", "数据库名称");

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

// 执行查询
$query = "SELECT id, name, email FROM users";
$result = $mysqli->query($query);

// 检查查询是否成功
if ($result) {
    // 获取查询结果的每一行数据
    while ($row = $result->fetch_row()) {
        // $row 返回一个数值索引数组
        echo "ID: " . $row[0] . " - Name: " . $row[1] . " - Email: " . $row[2] . "<br>";
    }
} else {
    echo "查询失败: " . $mysqli->error;
}

// 关闭连接
$mysqli->close();
?>

解释代码

  1. 数据库连接:首先,我们创建了一个 mysqli 对象来连接到数据库,提供了数据库服务器的主机名、用户名、密码和数据库名称。

  2. 执行查询:使用 query() 方法执行 SQL 查询,返回一个查询结果对象。

  3. 获取数据:使用 fetch_row() 方法逐行获取查询结果,并将每一行数据作为数值索引数组返回。在这个例子中,数组中的索引分别是 012,分别对应 idnameemail 字段。

  4. 输出数据:通过 echo 输出每行数据的各个字段值。

注意事项

  • fetch_row() 返回的数组是数值索引数组,因此如果你需要访问某一列的数据,必须使用该列的数字索引(从 0 开始)。

  • fetch_row() 每次调用后,会返回结果集中的下一行。如果没有更多的行,它将返回 null,可以使用 while 循环遍历所有结果。

  • 如果查询返回的数据量很大,建议使用分页查询来减少内存占用。

实际应用中的 URL 替换示例

如果您的应用需要从某个外部数据源获取数据,并且其中的 URL 需要替换域名为 m66.net,可以通过简单的字符串替换来实现。以下是一个例子: