PHP Conference Japan 2024

db2_fetch_assoc

(PECL ibm_db2 >= 1.0.0)

db2_fetch_assoc返回一个数组,以列名为索引,表示结果集中的一个行

描述

db2_fetch_assoc(资源 $stmt, 整数 $row_number = -1): 数组|false

返回一个数组,以列名为索引,表示结果集中的一个行。

参数

stmt

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

row_number

请求结果集中特定的一行(从 1 开始索引)。如果结果集使用仅向前游标,则传递此参数会导致 PHP 警告。

返回值

返回一个关联数组,其中列值以列名为索引,表示结果集中下一行或请求的行。如果结果集中没有剩余行,或者 row_number 请求的行在结果集中不存在,则返回 false

范例

示例 #1 遍历仅向前游标

如果您在没有指定行号的情况下调用 db2_fetch_assoc(),它会自动检索结果集中的下一行。

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

以上示例将输出

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

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

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

<?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_assoc($result, $i)) {
printf ("%-5d %-16s %-32s %10s\n",
$row['ID'], $row['NAME'], $row['BREED'], $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_both() - 返回一个数组,以列名和位置为索引,表示结果集中的一个行
  • db2_fetch_object() - 返回一个对象,其属性表示已提取行中的列
  • db2_fetch_row() - 将结果集指针设置为下一行或请求的行
  • db2_result() - 从结果集中的行返回单个列

添加注释

用户贡献的注释

此页面没有用户贡献的注释。
To Top