(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)
pg_lo_write — ラージオブジェクトに書き込む
pg_lo_write() は、ラージオブジェクトの カレントのシーク位置にデータを書き込みます。
ラージオブジェクトインターフェイスは、トランザクションブロックの中で 使用する必要があります。
注意:
この関数は、以前は pg_lowrite() と呼ばれていました。
lob
pg_lo_open() が返した PgSql\Lob クラスのインスタンス。
data
ラージオブジェクトに書き込むデータ。length
が
数値で、かつ data
の長さより小さく指定されている場合、
length
バイトのみが書き込まれます。
length
書き込むデータの最大バイト数(オプション)。0 より大きく、かつ
data
のサイズ以下でなければなりません。
デフォルトは data
の長さです。
ラージオブジェクトに書き込んだバイト数を返します。
エラー時には false
を返します。
バージョン | 説明 |
---|---|
8.1.0 |
lob は、PgSql\Lob
クラスのインスタンスを期待するようになりました。
これより前のバージョンでは、リソース を期待していました。
|
8.0.0 |
length は、nullable になりました。
|
例1 pg_lo_write() の例
<?php
$doc_oid = 189762345;
$data = "This will overwrite the start of the large object.";
$database = pg_connect("dbname=jacarta");
pg_query($database, "begin");
$handle = pg_lo_open($database, $doc_oid, "w");
$data = pg_lo_write($handle, $data);
pg_query($database, "commit");
?>