pg_escape_identifier
(PHP 5 >= 5.4.4, PHP 7)
pg_escape_identifier — Экранирует идентификатор для вставки в текстовое поле
Описание
$connection
= ?
, string $data
) : stringpg_escape_identifier() экранирует идентификатор (например, таблицу, имена полей) для выполнения запроса к базе. Возвращает экранированный идентификатор строки для сервера PostgreSQL. pg_escape_identifier() добавляет двойные кавычки до и после данных. Пользователи не должны добавлять двойные кавычки. Использование этой функции рекомендуется для параметров идентификаторов в запросах. Для SQL-литералов (то есть параметров, кроме bytea) необходимо использовать pg_escape_literal() или pg_escape_string(). Для типа поля bytea нужно использовать pg_escape_bytea().
Замечание:
Эта функция имеет внутренний код экранирования и может быть использована с PostgreSQL 8.4 и ниже.
Список параметров
-
connection
-
Ресурс соединения с базой данных PostgreSQL. Когда
connection
отсутствует, то используется соединение по умолчанию. Соединение по умолчанию - это последнее соединение, которое было создано функцией pg_connect() или pg_pconnect(). -
data
-
Строка (string), содержащая текст, который должен быть экранирован.
Возвращаемые значения
Строка (string), содержащая экранированные данные.
Примеры
Пример #1 Пример выполнения pg_escape_identifier()
<?php
// Установить соединение с базой данных
$dbconn = pg_connect('dbname=foo');
// Экранировать данные имени таблицы
$escaped = pg_escape_identifier($table_name);
// Выбрать строки из $table_name
pg_query("SELECT * FROM {$escaped};");
?>
Смотрите также
- pg_escape_literal() - Экранировать литерал при вставке в текстовое поле
- pg_escape_bytea() - Экранирует спецсимволы в строке для вставки в поле типа bytea
- pg_escape_string() - Экранирование спецсимволов в строке запроса