PHP PDO pgsql: получить двоичный массив из столбцаPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 PHP PDO pgsql: получить двоичный массив из столбца

Сообщение Anonymous »

В PostgreSql есть таблица со столбцом типа 'bytea' с jpeg.
В pgAdmin этот столбец отображается как [двоичные данные].
В PHP-скрипте мне нужно получить двоичные данные из этого столбца и преобразовать их в строку base64, чтобы передать их в объект json.
$pdo = new PDO($dsn);
$query = 'select image from image where bid=' . $id . ';';
$stm = $pdo->query($query);
$ok = $stm->execute();
$ok = $stm->bindColumn('image', $lob, PDO::PARAM_LOB);
$ft = $stm->fetch(PDO::FETCH_BOUND);
if ($ft && is_resource($lob))
{
//content of $lob: resource id='10' type='stream'

$stream = $pdo->pgsqlLOBOpen($lob, 'r');
}
/*
Exception has occurred.
TypeError: PDO::pgsqlLOBOpen(): Argument #1 ($oid) must be of type string, resource given

I've tried replacing $lob with strings like this: '10' or 'id=10' but got an error.
*/


Подробнее здесь: https://stackoverflow.com/questions/791 ... rom-column
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»