db2_fetch_object

(PECL ibm_db2 >= 1.0.0)

db2_fetch_object Devolver un objeto con atributos que representan a las columnas de una fila extraida

Descripción

db2_fetch_object ( resource $stmt [, int $row_number = -1 ] ) : object

Devuelve un objeto en el que cada atributo representa una columna devuelta de una fila extraida 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 los resultados utilizan cursor de no-recorrido.

Valores devueltos

Devuelve un objeto que representa una fila del bloque de resultados. Los atributos del objeto son creados a partir de los nombres de las columnas del resultado.

Los servidores de base de datos como IBM DB2, Cloudscape, y Apache Derby usualmente convierten a mayúsculas los nombres de las columnas por lo que esto se verá reflejado en los atributos del objeto.

Si una sentencia SELECT a su vez llama a una función escalar para modificar el valor de una columna, los servidores de base de datos devuelven el número de la columna como si fuera el nombre de la misma para ser usada como atributo. Si se quiere un nombre de columna más descriptivo, se puede usar la clausula AS para asignar un alias a la columna del resultado.

Devuelve FALSE si no hay fila devuelta.

Ejemplos

Ejemplo #1 Ejemplo de db2_fetch_object()

El siguiente ejemplo ejecuta una sentencia SELECT con una función escalar (RTRIM) que elimina espacios al final de la columna. En lugar de crear un objeto con las propiedades "BREED" y "2", se utilizará la claúsula AS en la sentencia SELECT para asignar el nombre "name" a la columna modificada. El servidor de base de datos convierte los nombres de las columnas a mayúsculas, lo que resultará en un objeto con los atributos "BREED" y "NAME".

<?php
$conn 
db2_connect($database$user$password);

$sql "SELECT breed, RTRIM(name) AS name
    FROM animals
    WHERE id = ?"
;

if (
$conn) {
    
$stmt db2_prepare($conn$sql);
    
db2_execute($stmt, array(0));

    while (
$pet db2_fetch_object($stmt)) {
        echo 
"Come here, {$pet->NAME}, my little {$pet->BREED}!";
    }
    
db2_close($conn);
}
?>

El resultado del ejemplo sería:

Come here, Pook, my little cat!

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_assoc() - Devolver un arreglo, indexado por el nombre de las columnas, representando una fila del 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_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