Javascript debugger
Website design
↑
pg_unescape_bytea() unescapes PostgreSQL bytea data values. It returns the unescaped string, possibly containing binary data.
When you SELECT
a bytea type, PostgreSQL returns octal byte values
prefixed with '\' (e.g. \032). Users are supposed to convert back to
binary format manually.
This function requires PostgreSQL 7.2 or later. With PostgreSQL
7.2.0 and 7.2.1, bytea values must be cast when you enable
multi-byte support. i.e. INSERT INTO test_table (image)
VALUES ('$image_escaped'::bytea);
PostgreSQL 7.2.2 or
later does not need a cast. The exception is when the client and backend
character encoding does not match, and there may be multi-byte
stream error. User must then cast to bytea to avoid this error.
<?php
// Connect to the database
$dbconn = pg_connect('dbname=foo');
// Get the bytea data
$res = pg_query("SELECT data FROM gallery WHERE name='Pine trees'");
$raw = pg_fetch_result($res, 'data');
// Convert to binary and send to the browser
header('Content-type: image/jpeg');
echo pg_unescape_bytea($raw);
?>