PHP Handbuch
Zurück |  | Nach vorne

# pg_Fetch_Object

(3.0.1 - 3.0.18 only, PHP 4 >= 4.0.0)

pg_Fetch_Object -- Holt einen Datensatz als Objekt

## Beschreibung

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

Rückgabewert: Ein Objekt, dessen Eigenschaften mit denen der Felder des erhaltenen Datensatzes übereinstimmen oder `FALSE`, wenn kein Datensatz mehr zurückgegeben wird.

pg_fetch_object() ist pg_fetch_array() ähnlich, mit einem Unterschíed: Statt eines Arrays wird ein Objekt zurückgegeben. Indirekt heißt das, dass man die Daten nur über die Feldnamen und nicht über ihre Offsets ansprechen kann (Zahlen sind nicht erlaubte Eigenschaftsnamen).

Das dritte, optionale Argument `result_type` in pg_fetch_object() ist eine Konstante und kann die folgenden Werte annehmen: PGSQL_ASSOC, PGSQL_NUM, and PGSQL_BOTH.

> Anmerkung: `Result_type` wurde in PHP 4.0 hinzugefügt

Von der Geschwindigkeit her ist die Funktion mit pg_fetch_array() identisch und fast so schnell wie pg_fetch_row() (Der Unterschied ist unwesentlich).

Siehe auch: pg_fetch_array() und pg_fetch_row().

Beispiel 1. Postgres fetch object
    <?php
    $database = "verlag";
    $db_conn = pg_connect ("localhost", "5432", "", "", $database);
    if (!$db_conn): ?>
        <H3>Konnte keine Datenbankverbindung zu
        <? echo $database ?> herstellen.</H3> <?
        exit;
    endif;

    $qu = pg_exec ($db_conn, "SELECT * FROM verlag ORDER BY autor");
    $row = 0; // postgres needs a row counter other dbs might not

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

    <PRE><?php
    $fields[] = Array ("autor", "Autor");
    $fields[] = Array ("jahr",  " Jahr");
    $fields[] = Array ("titel", " Titel");
    $row= 0; // postgres needs a row counter other dbs might not

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

Zurück | Zum Anfang | Nach vorne
pg_Fetch_Array | Nach oben | pg_Fetch_Row