pg_Fetch_Object

(PHP 3 >= 3.0.1, PHP 4, PHP 5)

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