pg_lo_tell

ラージオブジェクトのカレントのシーク位置を返す

説明

int pg_lo_tell(PgSql\Lob $lob)

pg_lo_tell は、ラージオブジェクトのカレントの位置 (先頭からのオフセット)を返します。

ラージオブジェクトインターフェイスは、トランザクションブロックの中で 使用する必要があります。

パラメータ

lob

pg_lo_open が返した PgSql\Lob クラスのインスタンス。

戻り値

ラージオブジェクトの先頭からのカレントのシーク位置(バイト数)を返します。 エラーが発生した場合は、負の数を返します。

変更履歴

バージョン 説明
8.1.0 lob は、PgSql\Lob クラスのインスタンスを期待するようになりました。 これより前のバージョンでは、リソース を期待していました。

例1 pg_lo_tell の例

<?php
   $doc_oid 
189762345;
   
$database pg_connect("dbname=jacarta");
   
pg_query($database"begin");
   
$handle pg_lo_open($database$doc_oid"r");
   
// 最初の 50000 バイトをスキップする
   
pg_lo_seek($handle50000PGSQL_SEEK_SET);
   
// どれだけスキップしたのかを調べる
   
$offset pg_lo_tell($handle);
   echo 
"Seek position is: $offset";
   
pg_query($database"commit");
?>

上の例の出力は以下となります。

Seek position is: 50000

参考

  • pg_lo_seek