pg_lo_write

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

pg_lo_writeSchreibt in ein Large Object

Beschreibung

pg_lo_write(PgSql\Lob$lob, string$data, ?int$length = null): int|false

pg_lo_write() schreibt Daten ab der aktuellen Position der internen Schreib-Lese-Marke in ein Large Object.

Um die Large Object- (lo) Schnittstelle benutzen zu können, müssen die Kommandos innerhalb einer Transaktion ausgeführt werden.

Hinweis:

Diese Funktion ersetzt die Funktion pg_lowrite().

Parameter-Liste

lob

Eine PgSql\Lob-Instanz, die von pg_lo_open() zurückgegeben wurde.

data

Die Daten, die in das Large Object geschrieben werden. Falls length vom Typ int ist und kleiner als die Länge von data, werden nur length Bytes geschrieben.

length

Die maximale Anzahl der Bytes, die geschrieben werden. Die Anzahl muss größer als 0 und kleiner als die Länge von data sein. Der Vorgabewert ist die Länge von data. Diese Angabe ist optional.

Rückgabewerte

Die Anzahl der Bytes, die in das Large Object geschrieben wurden, oder false, falls ein Fehler auftrat.

Changelog

VersionBeschreibung
8.1.0 Der Parameter lob erwartet nun eine PgSql\Lob-Instanz; vorher wurde eine Ressource erwartet.
8.0.0length ist jetzt nullbar.

Beispiele

Beispiel #1 pg_lo_write()-Beispiel

<?php
$doc_oid
= 189762345;
$data = "Hiermit wird der Anfang des Large Objects überschrieben.";
$database = pg_connect("dbname=jacarta");
pg_query($database, "begin");
$handle = pg_lo_open($database, $doc_oid, "w");
$data = pg_lo_write($handle, $data);
pg_query($database, "commit");
?>

Siehe auch

To Top