Beschreibung
object
pg_fetch_object
( resource result, int row [, int result_type])
pg_fetch_object(
)
gibt
ein
Objekt
zurück
,
dessen
Eigenschaften
mit
den
Feldern
des
erhaltenen
Datensatzes
übereinstimmen
oder
FALSE
,
wenn
kein
Datensatz
mehr
gelesen
werden
konnte
oder
ein
Fehler
auftrat
.
pg_fetch_object(
)
ist
pg_fetch_array(
)
ähnlich
,
mit
einem
Unterschied
:
Statt
eines
Arrays
wird
ein
Objekt
zurückgegeben
.
Indirekt
heisst
das
,
dass
man
die
Daten
nur
über
die
Feldnamen
und
nicht
über
ihre
Offsets
ansprechen
kann
(
Zahlen
sind
nicht
erlaubte
Eigenschaftsnamen
)
.
row
ist
die
Zeilennummer
,
die
Nummerierung
beginnt
bei
0
.
Von
der
Geschwindigkeit
her
ist
die
Funktion
mit
pg_fetch_array(
)
identisch
und
fast
so
schnell
wie
pg_fetch_row(
)
(Der
Unterschied
ist
unwesentlich
)
.
Anmerkung
:
Ab
der
PHP-Version
4.3.0
ist
die
Standardeinstellung
von
result_type
PGSQL_ASSOC
,
während
PGSQL_BOTH
in
älteren
Versionen
voreingestellt
ist
.
Da
nummerische
Eigenschaftsnamen
von
Objekten
nicht
erlaubt
sind
,
ist
PGSQL_BOTH
überflüssig
.
result_type
wird
möglicherweise
in
zukünftigen
Versionen
gelöscht
werden
.
Siehe
auch
pg_query(
)
,
pg_fetch_array(
)
,
pg_fetch_row(
)
und
pg_fetch_result(
)
.
Beispiel
1
.
PostgreSQL
fetch
object
H1
Konnte
keine
Verbindung
zur
PostgreSQL
Datenbank
?php
echo
$database
;
?
herstellen
.
/
H1
?php
exit
;
endif
;
$qu
=
pg_query
($db_conn
,
"SELECT
*
FROM
verlag
ORDER
BY
autor")
;
$row
=
0
;
/
/
PostgreSQL
braucht
einen
Zähler
,
andere
DBs
evtl
.
nicht
while
($data
=
pg_fetch_object
($qu
,
$row)
)
{
echo
$data
-
autor
.
"
("
;
echo
$data
-
jahr
.")
:
"
;
echo
$data
-
titel
.
"
BR
"
;
$row++
;
}
?
PRE
?php
$fields[
]
=
Array
("autor"
,
"Author")
;
$fields[
]
=
Array
("jahr"
,
"
Jahr")
;
$fields[
]
=
Array
("titel"
,
"
Titel")
;
$row=
0
;
/
/
PostgreSQL
braucht
einen
Zähler
,
andere
DBs
evtl
.
nicht
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++
;
}
echo
"----------\n"
;
?
/
PRE
?php
pg_free_result
($qu)
;
pg_close
($db_conn)
;
?
|
|
Anmerkung
:
Ab
der
Version
4.1.0
ist
der
Parameter
row
optional
.
Ein
Aufruf
von
pg_fetch_object(
)
inkrementiert
den
internen
Datensatzzähler
um
1
.