pg_lo_open

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

pg_lo_open Abre un objeto de gran tamaño de PostgreSQL

Descripción

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

pg_lo_open() abre un objeto grande en la base de datos y devuelve una instancia de PgSql\Lob para que pueda ser manipulado.

Advertencia

No cerrar la conexión a la base de datos antes de cerrar la instancia PgSql\Lob.

Para utilizar un objeto de gran tamaño (lo), es necesario hacerlo dentro de una transacción.

Nota:

Anteriormente, esta función se llamaba 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

El OID del objeto de gran tamaño en la base de datos.

mode

Puede ser "r" para solo lectura, "w" para solo escritura o "rw" para lectura y escritura.

Valores devueltos

Una instancia PgSql\Lob, o false en caso de error.

Historial de cambios

Versión Descripción
8.1.0 Ahora devuelve una instancia de PgSql\Lob; anteriormente, se devolvía un recurso.
8.1.0 The connection parameter expects an PgSql\Connection instance now; previously, a recurso was expected.

Ejemplos

Ejemplo #1 Ejemplo con pg_lo_open()

<?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, "datos de objeto de gran tamaño");
pg_lo_close($handle);
pg_query($database, "commit");
?>

Ver también