(PECL ibm_db2 >= 1.0.1)
db2_fetch_array — Devolver un arreglo, indexado por la posición de las columnas, que represanta una fila de un bloque de resultados
$stmt
[, int $row_number
= -1
] ) : arrayDevuelve un arreglo, indexado por la posición de las columnas, que representa una fila en un bloque de resultados. El primer índice es cero.
stmt
Un resurso stmt válido que contenga el resultado de la consulta.
row_number
Extrae una fila específica del bloque de resultados indexada a partir de uno. Este argumento puede provocar una advertencia en PHP si el resultado utiliza un cursor de no-recorrido (sólo hacia adelante).
Devuelve un arreglo, indexado a partir de cero de acuerdo a la posición de la columna,
que representa la fila solicitada en un bloque de resultados. Devuelve FALSE
si
no quedan más filas en el bloque de resultados o si la fila solicitada por
row_number
no existe en el bloque.
Ejemplo #1 Iterando a través de un cursor de no-recorrido (sólo hacia adelante)
Si se llama a db2_fetch_array() sin un número de fila específico, automáticamente extrae la siguiente fila del bloque de resultados.
<?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]);
}
?>
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_array() con un cursor de recorrido
Si el bloque de resultados utiliza un cursor de recorrido, se puede llamar a db2_fetch_array() con un número de fila específico. El siguiente ejemplo extrae el resto de las filas comenzando por 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_array($result, $i)) {
printf ("%-5d %-16s %-32s %10s\n",
$row[0], $row[1], $row[2], $row[3]);
$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