PHP8 db2_fetch_both

2024-04-07 10:23 更新

(PECL ibm_db2 >= 1.0.0)

db2_fetch_both — 返回一个数组,该数组按列名和位置编制索引,表示结果集中的一行

说明

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

返回一个数组,该数组按列名和位置编制索引,表示 行。请注意,db2_fetch_both() 返回的行需要比 由 db2_fetch_assoc() 或 db2_fetch_array() 返回的单索引数组。

参数 

stmt

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

row_number

从结果集中请求特定的 1 索引行。传递这个 参数会导致 PHP 警告,如果结果集使用 只向游标。

返回值 

返回一个关联数组,其中的列值由两个列索引 name 和 0 索引列号。数组表示下一个或 结果集中的 requested 行。如果没有剩余的行,则返回 false 在结果集中,或者如果结果集中不存在请求的行。row_number

示例 

示例 #1 遍历只进游标

如果调用 db2_fetch_both() 而没有特定行 number,它会自动检索结果集中的下一行。这 以下示例通过两列访问返回数组中的列 名称和数字索引。

<?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_both($stmt)) {
    printf ("%-5d %-16s %-32s %10s\n", 
        $row['ID'], $row[0], $row['BREED'], $row[3]);
}
?>

以上示例会输出:

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

示例 #2 从可滚动光标中检索带有 db2_fetch_both() 的特定行

如果结果集使用可滚动游标,则可以使用特定行号调用 db2_fetch_both()。这 以下示例检索结果集中的每隔一行,从 与第二行。

<?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_both($result, $i)) {
    printf ("%-5d %-16s %-32s %10s\n", 
        $row[0], $row['NAME'], $row[2], $row['WEIGHT']);
    $i = $i + 2;
}
?>

以上示例会输出:

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

参见 

  • db2_fetch_array() - 返回一个数组,按列位置索引,表示结果集中的一行
  • db2_fetch_assoc() - 返回一个数组,按列名索引,表示结果集中的一行
  • db2_fetch_object() - 返回一个对象,其属性表示提取行中的列
  • db2_fetch_row() - 将结果集指针设置为下一行或请求的行
  • db2_result() - 从结果集中的一行返回一列


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号