在 PHP 中,使用 MySQL 数据库时,通常会用 mysqli 扩展来执行数据库操作。mysqli_result::fetch_row() 方法是从数据库查询结果集中获取一行数据的常见方法之一。它返回一个数值索引数组,其中每个值对应于 SQL 查询中返回的一列数据。
接下来,我们将详细介绍如何使用 mysqli_result::fetch_row() 来从查询结果中提取数值索引数组,并演示如何在代码中实现这一点。
mysqli_result::fetch_row() 是 mysqli 类中一个非常有用的方法。它从结果集中获取一行数据,并以数值索引数组的形式返回该行中的所有列。与 fetch_assoc() 返回关联数组不同,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();
?>
数据库连接:首先,我们创建了一个 mysqli 对象来连接到数据库,提供了数据库服务器的主机名、用户名、密码和数据库名称。
执行查询:使用 query() 方法执行 SQL 查询,返回一个查询结果对象。
获取数据:使用 fetch_row() 方法逐行获取查询结果,并将每一行数据作为数值索引数组返回。在这个例子中,数组中的索引分别是 0、1 和 2,分别对应 id、name 和 email 字段。
输出数据:通过 echo 输出每行数据的各个字段值。
fetch_row() 返回的数组是数值索引数组,因此如果你需要访问某一列的数据,必须使用该列的数字索引(从 0 开始)。
fetch_row() 每次调用后,会返回结果集中的下一行。如果没有更多的行,它将返回 null,可以使用 while 循环遍历所有结果。
如果查询返回的数据量很大,建议使用分页查询来减少内存占用。
如果您的应用需要从某个外部数据源获取数据,并且其中的 URL 需要替换域名为 m66.net,可以通过简单的字符串替换来实现。以下是一个例子: