pg_lo_seek
(PHP 4 >= 4.2.0, PHP 5)
pg_lo_seek — Setzt die Lese- oder Schreibposition in einem Large Object
Beschreibung
$large_object
, int $offset
[, int $whence = PGSQL_SEEK_CUR
] )pg_lo_seek() setzt den internen Zeiger einer Large Object Ressource auf die angegebenen Position.
Um die Large Object (lo) Schnittstelle benutzen zu können, müssen die Kommandos innerhalb einer Transaktion ausgeführt werden.
Parameter-Liste
-
large_object -
PostgreSQL Large Object Ressource (LOB), die von der Funktion pg_lo_open() zurückgegeben wurde.
-
offset -
Die Anzahl der Bytes, hinter die der interne Zeiger gesetzt wird.
-
whence -
Eine der Konstanten
PGSQL_SEEK_SET(bewegt den internen Zeiger vom Anfang ausgehend),PGSQL_SEEK_CUR(bewegt den internen Zeiger ab der aktuellen Position) oderPGSQL_SEEK_END(bewegt den internen Zeiger vom Ende ausgehend).
Rückgabewerte
Gibt bei Erfolg TRUE zurück. Im Fehlerfall wird FALSE zurückgegeben.
Beispiele
Beispiel #1 pg_lo_seek() Beispiel
<?php
$doc_oid = 189762345;
$database = pg_connect("dbname=jacarta");
pg_query($database, "begin");
$handle = pg_lo_open($database, $doc_oid, "r");
// Die ersten 50000 Bytes ueberspringen
pg_lo_seek($handle, 50000, PGSQL_SEEK_SET);
// Die naechsten 10000 Bytes lesen
$data = pg_lo_read($handle, 10000);
pg_query($database, "commit");
echo $data;
?>
