ラージオブジェクトに書き込む

# pg_lo_write

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

pg_lo_write — ラージオブジェクトに書き込む

### 説明

function pg_lo_write(PgSql\Lob `$lob`, string `$data`, ?int `$length` = `null`): int|false

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 クラスのインスタンスを期待するようになりました。 これより前のバージョンでは、resource を期待していました。
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");
    ?>

### 参考

- pg_lo_create() - ラージオブジェクトを生成する
- pg_lo_open() - ラージオブジェクトをオープンする

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open