pg_tty
pg_untrace
PostgreSQL Functions
PHP Manual

# pg_unescape_bytea

(PHP 4 >= 4.3.0, PHP 5)

pg_unescape_bytea — Unescape binary for bytea type

### Description

string pg_unescape_bytea ( string `$data` )

pg_unescape_bytea() unescapes PostgreSQL bytea data values. It returns the unescaped string, possibly containing binary data.

> Note:

> 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.

### Parameters

`data`

  A string containing PostgreSQL bytea data to be converted into a PHP binary string.

### Return Values

A string containing the unescaped data.

### Examples

Example #1 pg_unescape_bytea() example

`<?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);
?>`

### Changelog

Version | Description
--- | ---
5.5.1 | A warning is thrown if the input string is invalid.

### See Also

- pg_escape_bytea() - Escape a string for insertion into a bytea field
- pg_escape_string() - Escape a string for query

pg_tty
pg_untrace
PostgreSQL Functions
PHP Manual