# pg_lo_open

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

pg_lo_open — Open a large object

### Descripción

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

pg_lo_open() opens a large object in the database and returns an PgSql\Lob instance so that it can be manipulated.

Advertencia

Do not close the database connection before closing the PgSql\Lob instance.

To use the large object interface, it is necessary to enclose it within a transaction block.

> Nota:

> This function used to be called pg_loopen().

### Parámetros

`connection`

  An PgSql\Connection instance. When `connection` is unspecified, the default connection is used. The default connection is the last connection made by pg_connect() or pg_pconnect().

  Advertencia

  As of PHP 8.1.0, using the default connection is deprecated.

`oid`

  The OID of the large object in the database.

`mode`

  Can be either "r" for read-only, "w" for write only or "rw" for read and write.

### Valores devueltos

An PgSql\Lob instance, o `false` en caso de error.

### Historial de cambios

Versión | Descripción
--- | ---
8.1.0 | Returns an PgSql\Lob instance now; previously, a recurso was returned.
8.1.0 | The `connection` parameter expects an PgSql\Connection instance now; previously, a recurso was expected.

### Ejemplos

Ejemplo #1 pg_lo_open() example

`<?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, "large object data");
pg_lo_close($handle);
pg_query($database, "commit");
?>`

### Ver también

- pg_lo_close() - Close a large object
- pg_lo_create() - Create a large object