pg_escape_identifier

(PHP 5 >= 5.4.4, PHP 7)

pg_escape_identifier Экранирует идентификатор для вставки в текстовое поле

Описание

pg_escape_identifier ( resource $connection = ? , string $data ) : string

pg_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() - Экранирование спецсимволов в строке запроса