pg_Fetch_Object

(PHP 3>= 3.0.1, PHP 4 )

pg_Fetch_Object -- sor beolvasása objektumként

Leírás

object pg_fetch_object ( int result, int row [, int result_type])

Egy objektummal tér vissza, aminek a tulajdonságai megegyeznek a beolvasott sor mezőivel, hamissal, ha nincs több sor.

pg_fetch_object() hasonló a pg_fetch_array()-hoz, egy különbséget kivéve - objektummal tér vissza, nem tömbbel. Vagyis adatot csak mezőnevekkel érhetsz el, indexszel (számokkal) nem (a számok ugyanis illegális mezőnevek).

A harmadik, result_type nevű argumentum a következő értékeket veheti fel: PGSQL_ASSOC, PGSQL_NUM, and PGSQL_BOTH.

Megjegyzés: A result_type paraméter a PHP 4.0-ás változatában került a nyelvbe.

Sebesség szempontjából, a függvény azonos a pg_fetch_array() függvénnyel, és majdnem olyan gyors, mint a pg_fetch_row() (a különbség jelentéktelen).

Lásd még a pg_fetch_array() és a pg_fetch_row() függvényeket.

Példa 1. pg_fetch_object alkalmazása

<?php 
$database = "verlag";
$db_conn = pg_connect ("localhost", "5432", "", "", $database);
if (!$db_conn): ?>
    <H1>Nem lehet kapcsolódni a <? echo $database ?> nevű adatbázishoz.</H1> <?
    exit;
endif;

$qu = pg_exec ($db_conn, "SELECT * FROM verlag ORDER BY autor");
$row = 0; // A postgresnek kell egy sorszámláló, ami más adatbáziskezelőnél talán nem

while ($data = pg_fetch_object ($qu, $row)):
    echo $data->autor." (";
    echo $data->jahr ."): ";
    echo $data->titel."<BR>";
    $row++;
endwhile; ?>

<PRE><?php
$fields[] = Array ("autor", "Author");
$fields[] = Array ("jahr",  "  Year");
$fields[] = Array ("titel", " Title");

$row= 0; // A postgresnek kell egy sorszámláló, ami más adatbáziskezelőnél talán nem
while ($data = pg_fetch_object ($qu, $row)):
    echo "----------\n";
    reset ($fields);
    while (list (,$item) = each ($fields)):
        echo $item[1].": ".$data->$item[0]."\n";
    endwhile;
    $row++;
endwhile;
echo "----------\n"; ?>
</PRE> <?php
pg_freeResult ($qu);
pg_close ($db_conn);
?>