phpday 2022

pg_lo_seek

(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)

pg_lo_seek Setzt die Lese- oder Schreibposition in einem Large Object

Beschreibung

pg_lo_seek(PgSql\Lob $lob, int $offset, int $whence = SEEK_CUR): bool

pg_lo_seek() setzt den internen Zeiger einer PgSql\Lob-Instanz 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

lob

Eine PgSql\Lob-Instanz, die von 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) oder PGSQL_SEEK_END (bewegt den internen Zeiger vom Ende ausgehend).

Rückgabewerte

Gibt bei Erfolg true zurück. Bei einem Fehler wird false zurückgegeben.

Changelog

Version Beschreibung
8.1.0 Der Parameter lob erwartet nun eine PgSql\Lob-Instanz; vorher wurde eine Ressource erwartet.

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($handle50000PGSQL_SEEK_SET);
   
// Die naechsten 10000 Bytes lesen
   
$data pg_lo_read($handle10000);
   
pg_query($database"commit");
   echo 
$data;
?>

Siehe auch

  • pg_lo_tell() - Liefert die aktuelle Lese- oder Schreibposition in einem Large Object

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top