# pg_lo_open

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

pg_lo_open — Öffnet ein Large Object

### Beschreibung

pg_lo_open(PgSql\Connection `$connection`, int `$oid`, string `$mode`): PgSql\Lob|false

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.

Warnung

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().

### Parameter-Liste

`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.

  Warnung

  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.

### Rückgabewerte

Eine PgSql\Lob-Instanz. Bei einem Fehler wird `false` zurückgegeben.

### Changelog

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.

### Beispiele

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");
?>`

### Siehe auch

- pg_lo_close() - Schließt ein Large Object
- pg_lo_create() - Erzeugt ein Large Object

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open