# pg_lo_write

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

pg_lo_write — Écrit un objet de grande taille PostgreSQL

### Description

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

pg_lo_write() écrit des données à l'intérieur d'un objet de grande taille à la position courante.

Pour manipuler un objet de grande taille (`lo`), il est nécessaire de placer les opérations dans un bloc de transaction.

> Note:

> Auparavant, cette fonction s'appelait pg_lowrite().

### Liste de paramètres

`lob`

  Une instance PgSql\Lob, retourné par pg_lo_open().

`data`

  Les données à être écrites dans l'objet de grande taille. Si `length` est un int et est inférieur à la grandeur de `data`, seul les `length` premiers octets y seront écrits.

`length`

  Un nombre maximal d'octets à écrire. Il doit être supérieur à zéro et inférieur à la grandeur de `data`. Cet argument est optionnel, s'il est omis, il prendra par défaut la grandeur de `data`.

### Valeurs de retour

Le nombre d'octets écrit dans l'objet de grande taille ou `false` en cas d'erreur.

### Historique

Version | Description
--- | ---
8.1.0 | Le paramètre `lob` attend désormais une instance de PgSql\Lob ; auparavant, une resource était attendu.
8.0.0 | `connection` est désormais nullable.

### Exemples

Exemple #1 Exemple avec pg_lo_write()

`<?php
$doc_oid = 189762345;
$data = "Ceci écrasera le début de l'objet de grande taille.";
$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");
?>`

### Voir aussi

- pg_lo_create() - Crée un objet de grande taille PostgreSQL
- pg_lo_open() - Ouvre un objet de grande taille PostgreSQL