pg_escape_bytea
(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)
pg_escape_bytea - Екранує спецсимволи в рядку для вставки в поле типу bytea
Опис
pg_escape_bytea(PgSql\Connection $connection = ?, string $data): string
pg_escape_bytea() екранує спецсимволи у рядку з даними типу bytea. Повертає екранований рядок.
Зауваження :
При вибірці SQL-функцією
SELECT
даних типу bytea PostgreSQL повертає значення у восьмеричній системі числення з префіксом '\' (такі як \032). Користувачеві необхідно вручну перетворювати їх у двійковий формат.Функція підтримується PostgreSQL версії 7.2 та вище. Для версій 7.2.0 та 7.2.1 значення мають бути перетворені до типу bytea, коли увімкнена мультибайтова підтримка. Тоді як
INSERT INTO test_table (image)VALUES ('$image_escaped'::bytea);
PostgreSQL 7.2.2 і вище не вимагає будь-яких перетворень. Виняток становить випадок, коли клієнтське (frontend) кодування не відповідає серверному (backend). При цьому виникає помилка мультибайтового потоку, і користувач повинен привести дані типу bytea, щоб її уникнути.
Список параметрів
connection
Екземпляр PgSql\Connection. Якщо параметр connection
не вказано, буде вибрано стандартне з'єднання. Стандартне з'єднання — це останнє з'єднання, яке встановила функція pg_connect() або pg_pconnect()
Увага
Починаючи з версії PHP 8.1.0, використання стандартного з'єднання застаріло.
data
Рядок містить двійкові дані у вигляді тексту, які потрібно помістити в поле типу bytea.
Значення, що повертаються
Повертає рядок, де екрановані всі необхідні символи.
список змін
Версия | Опис |
---|---|
8.1.0 | Параметрconnection тепер чекає екземпляр PgSql\Connection; раніше очікувався ресурс (resource |
Приклади
Приклад #1 Приклад використання pg_escape_bytea()****
Loading...
Дивіться також
- pg_unescape_bytea() - Забирає екранування двійкових даних типу bytea
- pg_escape_string() - Екранування спецсимволів у рядку запиту