update page now

pg_escape_identifier

(PHP 5 >= 5.4.4, PHP 7, PHP 8)

pg_escape_identifier Экранирует идентификатор перед вставкой в текст SQL-инструкции

Описание

pg_escape_identifier(PgSql\Connection $connection = ?, string $data): string

Функция pg_escape_identifier() экранирует названия таблиц, полей и других идентификаторов в SQL-инструкциях перед отправкой запроса к базе данных. Функция pg_escape_identifier() экранирует идентификаторы по правилам PostgreSQL-сервера — обрамляет двойными кавычками — и возвращает заэкранированную строку. Оставлять в SQL-инструкции незаэкранированные идентификаторы или добавлять двойные кавычки вручную — небезопасно. Строковые, числовые, логические и другие SQL-литералы внутри инструкции, кроме типа bytea, экранируют функцией pg_escape_literal() или pg_escape_string(). Поля с типом bytea экранируют функцией pg_escape_bytea().

Список параметров

connection

Экземпляр класса PgSql\Connection. Функция выберет соединение по умолчанию, если параметр connection не указали. Соединение по умолчанию — последнее соединение, которое установила функция pg_connect() или pg_pconnect().

Внимание

Начиная с PHP 8.1.0 выбор функцией соединения по умолчанию устарел.

data

Текстовая строка (string), которую требуется заэкранировать.

Возвращаемые значения

Функция возвращает строку (string) с заэкранированными данными.

Список изменений

Версия Описание
8.1.0 Параметр connection теперь принимает объект PgSql\Connection; раньше параметр принимал тип resource.

Примеры

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

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top