(PHP 4 >= 4.2.0, PHP 5, PHP 7)
pg_lo_tell — Возвращает текущее положение внутреннего указателя большого объекта
$large_object
) : intpg_lo_tell() возвращает текущую позицию (отступ от начала) внутреннего указателя большого объекта.
Операции с использованием интерфейса больших объектов необходимо заключать в блок транзакции.
large_object
Ресурс большого объекта (LOB) PostgreSQL, возвращаемый функцией pg_lo_open().
Текущая позиция внутреннего указателя (количество байт от начала) большого объекта. В случае ошибки функция вернет отрицательное значение.
Пример #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($handle, 50000, PGSQL_SEEK_SET);
// Проверим, на сколько мы отступили
$offset = pg_lo_tell($handle);
echo "Текущее положение внутреннего указателя: $offset";
pg_query($database, "commit");
?>
Результат выполнения данного примера:
Текущее положение внутреннего указателя: 50000
Версия | Описание |
---|---|
5.6.0 | Добавлена поддержка больших 64-битных объектов PostgreSQL 9.3. И клиент, и сервер должны поддерживать PostgreSQL 9.3, а PHP должен быть собран 64-битным и использовать 64-битные большие объекты. |