(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)
pg_lo_open — Öffnet ein Large Object
pg_lo_open() öffnet ein Large Object in einer Datenbank und gibt eine PgSql\Lob-Instanz zurück, über die das Large Object modifiziert werden kann.
Bevor die Datenbankverbindung geschlossen wird, müssen die PgSql\Lob-Instanzen wieder geschlossen werden.
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_loopen().
connection
Eine PgSql\Connection-Instanz.
Falls connection
nicht angegeben wurde, wird die Standardverbindung benutzt.
Das ist die zuletzt mit pg_connect() oder pg_pconnect() aufgebaute Verbindung.
Seit PHP 8.1.0 ist die Verwendung der Standardverbindung veraltet.
oid
Die OID des Large Objects in der Datenbank.
mode
Dies kann entweder "r" für nur lesen, "w" für nur schreiben oder "rw" für lesen und schreiben sein.
Version | Beschreibung |
---|---|
8.1.0 | Gibt nun eine PgSql\Lob-Instanz zurück; vorher wurde eine Ressource zurückgegeben. |
8.1.0 |
Der Parameter connection erwartet nun eine PgSql\Connection-Instanz;
vorher wurde eine Ressource erwartet.
|
Beispiel #1 pg_lo_open()-Beispiel
<?php
$database = pg_connect("dbname=jacarta");
pg_query($database, "begin");
$oid = pg_lo_create($database);
echo "$oid\n";
$handle = pg_lo_open($database, $oid, "w");
echo "$handle\n";
pg_lo_write($handle, "Daten des Large Objects");
pg_lo_close($handle);
pg_query($database, "commit");
?>