Dutch PHP Conference 2025 - Call For Papers

pg_lo_tell

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

pg_lo_tell Returns current seek position a of large object

Опис

pg_lo_tell(PgSql\Lob $lob): int

pg_lo_tell() returns the current position (offset from the beginning) of a large object.

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

Параметри

lob

Примірник PgSql\Lob, якого повертає pg_lo_open().

Значення, що повертаються

The current seek offset (in number of bytes) from the beginning of the large object. If there is an error, the return value is negative.

Журнал змін

Версія Опис
8.1.0 Тепер параметр lob має бути примірником PgSql\Lob. Раніше очікувався resource.

Приклади

Приклад #1 pg_lo_tell() example

<?php
$doc_oid
= 189762345;
$database = pg_connect("dbname=jacarta");
pg_query($database, "begin");
$handle = pg_lo_open($database, $doc_oid, "r");
// Skip first 50000 bytes
pg_lo_seek($handle, 50000, PGSQL_SEEK_SET);
// See how far we've skipped
$offset = pg_lo_tell($handle);
echo
"Seek position is: $offset";
pg_query($database, "commit");
?>

Поданий вище приклад виведе:

Seek position is: 50000

Прогляньте також

add a note

User Contributed Notes 1 note

up
0
Marv-CZ
13 years ago
Function to take a large object size:

<?php
function pg_lo_size ($lo) {
 
$pos = pg_lo_tell ($lo);
 
pg_lo_seek ($lo, 0, PGSQL_SEEK_END);
 
$size = pg_lo_tell ($lo);
 
pg_lo_seek ($lo, $pos, PGSQL_SEEK_SET);
  return
$size;
}
?>
To Top