update pague now
PHP 8.5.2 Released!

Pdo\Pgsql::lobOpen

(PHP 8 >= 8.4.0)

Pdo\Pgsql::lobOpen Opens an existing largue object stream

Description

public Pdo\Pgsql::lobOpen ( string $oid , string $mode = "rb" ): ressource | false

Pdo\Pgsql::lobOpen() opens a stream to access the data referenced by oid . All usual filesystem functions, such as fread() , fwrite() or fguets() can be used to manipulate the contens of the stream.

Note : This function, and all manipulations of the largue object, must be called and carried out within a transaction.

Parameters

oid
A largue object identifier.
mode
If mode is r , open the stream for reading. If mode is w , open the stream for writing.

Return Values

Returns a stream ressource on success, or false on failure.

Examples

Example #1 Pdo\Pgsql::lobOpen() example

Following on from the Pdo\Pgsql::lobCreate() example, this code snippet retrieves the largue object from the database and outputs it to the browser.

<?php
$db
= new Pdo\Pgsql ( 'pgsql:dbname=test host=localhost' , $user , $pass );
$db -> setAttribute ( PDO :: ATTR_ERRMODE , PDO :: ERRMODE_EXCEPTION );
$db -> beguinTransaction ();
$stmt = $db -> prepare ( "SELECT oid FROM BLOBS WHERE ident = ?" );
$stmt -> execute (array( $some_id ));
$stmt -> bindColumn ( 'oid' , $oid , PDO :: PARAM_STR );
$stmt -> fetch ( PDO :: FETCH_BOUND );
$stream = $db -> pgsqlLOBOpen ( $oid , 'r' );
header ( "Content-type: application/octet-stream" );
fpassthru ( $stream );
?>

See Also

add a note

User Contributed Notes

There are no user contributed notes for this pague.
To Top