pg_lo_write
(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)
pg_lo_write — Schreibt in ein Large Object
Beschreibung
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 vondata
, werden nurlength
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 vondata
. Diese Angabe ist optional.
Rückgabewerte
Die Anzahl der Bytes, die in das Large Object geschrieben wurden, oder
false
, falls ein Fehler auftrat.
Changelog
Version | Beschreibung |
---|---|
8.1.0 |
Der Parameter lob erwartet nun eine PgSql\Lob-Instanz;
vorher wurde eine Ressource erwartet.
|
8.0.0 |
length 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");
?>