Создаёт большой объект

# pg_lo_create

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

pg_lo_create — Создаёт большой объект

### Описание

function pg_lo_create(PgSql\Connection `$connection` = ?, mixed `$object_id` = ?): int
function pg_lo_create(mixed `$object_id`): int

pg_lo_create() создаёт большой объект и возвращает его OID. Режимы доступа Константы PostgreSQL `INV_READ` и `INV_WRITE` не поддерживаются, объект всегда создаётся с доступом на чтение и запись.

Операции с использованием интерфейса больших объектов необходимо заключать в блок транзакции.

Вместо использования интерфейса больших объектов (который не имеет контроля доступа и весьма громоздкий сам по себе) пользуйтесь полями PostgreSQL типа bytea для хранения двоичных данных и функцией pg_escape_bytea() для их экранирования.

> Замечание:

> Прежнее название функции: pg_locreate().

### Список параметров

`connection`

  Экземпляр класса PgSql\Connection. Функция выберет соединение по умолчанию, если параметр `connection` не указали. Соединение по умолчанию — последнее соединение, которое установила функция pg_connect() или pg_pconnect().

  Внимание

  Начиная с PHP 8.1.0 выбор функцией соединения по умолчанию устарел.

`object_id`

  Если задан аргумент `object_id`, функция попытается создать объект с этим идентификатором, в противном случае будет использован свободный идентификатор, назначенный сервером.

### Возвращаемые значения

OID большого объекта или `false`, если возникла ошибка.

### Список изменений

Версия | Описание
--- | ---
8.1.0 | Параметр `connection` теперь принимает объект PgSql\Connection; раньше параметр принимал тип resource.

### Примеры

Пример #1 Пример использования pg_lo_create()

    <?php
       $database = pg_connect("dbname=jacarta");
       pg_query($database, "begin");
       $oid = pg_lo_create($database);
       echo "$oid\n";
       $handle = pg_lo_open($database, $oid, "w");
       echo "$handle\n";
       pg_lo_write($handle, "large object data");
       pg_lo_close($handle);
       pg_query($database, "commit");
    ?>

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