PHP Conference Nagoya 2025

db2_fetch_assoc

(PECL ibm_db2 >= 1.0.0)

db2_fetch_assoc Devolver un arreglo, indexado por el nombre de las columnas, representando una fila del bloque de resultados

Descripción

db2_fetch_assoc(resource $stmt, int $row_number = -1): array

Devuelve un arreglo, indexado por el nombre de las columnas, representando una fila del bloque de resultados.

Parámetros

stmt

Un recurso stmt válido que contenga el bloque de resultados.

row_number

Solicita una fila específica, indexada a partir de uno, del bloque de resultados. Este parámetro provoca una advertencia de PHP si el bloque de resultados utiliza cursor de no-recorrido (sólo hacia adelante).

Valores devueltos

Devuelve un arreglo asociativo con los valores de las columnas indexados por el nombre de las mismas, representando la fila siguiente o la fila solicitada en el bloque de resultados. Devuelve false si no hay más filas en el resultado o si la fila solicitada por row_number no existe en el bloque de resultados.

Ejemplos

Ejemplo #1 Iterando a través de un cursor de no-recorrido (sólo hacia adelante)

Si se llama a db2_fetch_assoc() sin un número específico de fila, la siguiente fila del bloque de resultados se devuelve automáticamente.

<?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']);
}
?>

El resultado del ejemplo sería:

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

Ejemplo #2 Extrayendo filas específicas con db2_fetch_assoc() a partir de un cursor de recorrido

Si el bloque de resultados utiliza un cursor de recorrido, se puede llamar db2_fetch_assoc() con un número específico de fila. El siguiente ejemplo extrae todas las filas del resultado, comenzando con la segunda fila.

<?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;
}
?>

El resultado del ejemplo sería:

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

Ver también

  • db2_fetch_array() - Devolver un arreglo, indexado por la posición de las columnas, que represanta una fila de un bloque de resultados
  • db2_fetch_both() - Devolver un arreglo, indexado por el nombre y por la posición de la columna, representando una fila de un bloque de resultados
  • db2_fetch_object() - Devolver un objeto con atributos que representan a las columnas de una fila extraida
  • db2_fetch_row() - Establecer el apuntador de los resultados hacia la siguiente fila o a la fila solicitada
  • db2_result() - Devolver una columna específica del resultado

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top