db2_fetch_array

(PECL ibm_db2 >= 1.0.1)

db2_fetch_array返回一个数组,由列位置索引,表示结果集中的行

描述

db2_fetch_array(resource $stmt, int $row_number = -1): array|false

返回一个数组,由列位置索引,表示结果集中的行。列的索引从 0 开始。

参数

stmt

一个有效的 stmt 资源,包含一个结果集。

row_number

请求结果集中特定的 1 索引行。如果结果集使用的是只进游标,则传递此参数会导致 PHP 警告。

返回值

返回一个从 0 开始索引的数组,包含由列位置索引的列值,表示结果集中下一行或请求的行。如果结果集中没有剩余的行,或者由 row_number 请求的行在结果集中不存在,则返回 false

示例

示例 #1 遍历只进游标

如果您不指定特定的行号调用 db2_fetch_array(),它会自动检索结果集中的下一行。

<?php

$sql
= "SELECT id, name, breed, weight FROM animals ORDER BY breed";
$stmt = db2_prepare($conn, $sql);
$result = db2_execute($stmt);

while (
$row = db2_fetch_array($stmt)) {
printf ("%-5d %-16s %-32s %10s\n",
$row[0], $row[1], $row[2], $row[3]);
}
?>

上面的示例将输出

0     Pook             cat                                    3.20
5     Rickety Ride     goat                                   9.70
2     Smarty           horse                                350.00

示例 #2 从可滚动游标中使用 db2_fetch_array() 检索特定行

如果您的结果集使用的是可滚动游标,则可以调用 db2_fetch_array() 来指定行号。以下示例从第二行开始检索结果集中隔一行的数据。

<?php

$sql
= "SELECT id, name, breed, weight FROM animals ORDER BY breed";
$result = db2_exec($stmt, $sql, array('cursor' => DB2_SCROLLABLE));

$i=2;
while (
$row = db2_fetch_array($result, $i)) {
printf ("%-5d %-16s %-32s %10s\n",
$row[0], $row[1], $row[2], $row[3]);
$i = $i + 2;
}
?>

上面的示例将输出

0     Pook             cat                                    3.20
5     Rickety Ride     goat                                   9.70
2     Smarty           horse                                350.00

参见

添加说明

用户贡献说明

此页面没有用户贡献说明。
To Top