pg_unescape_bytea
(PHP 4 >= 4.3.0, PHP 5, PHP 7)
pg_unescape_bytea — Unescape binary for bytea type
Description
pg_unescape_bytea ( string $data ) : string
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
© 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/function.pg-unescape-bytea.php