pg_escape_string

(PHP 4 >= 4.2.0, PHP 5, PHP 7)

pg_escape_string Экранирование спецсимволов в строке запроса

Описание

string pg_escape_string ([ resource $connection ], string $data )

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

Замечание:

Функция поддерживается PostgreSQL версии 7.2 и выше.

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

connection

Ресурс подключения к базе данных PostgreSQL. Если параметр connection не задан, будет использовано подключение по умолчанию - последнее соединение, открытое функцией pg_connect() или pg_pconnect().

data

Исходная экранируемая строка.

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

Возвращает строку, в которой экранированы все необходимые символы.

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

Версия Описание
5.2.0 Добавлен аргумент connection

Примеры

Пример #1 Пример использования pg_escape_string()

<?php 
  
// Подключение к базе данных 
  
$dbconn pg_connect('dbname=foo');
  
  
// Чтение текстового файла (содержащего апострофы и обратные слеши)
  
$data file_get_contents('letter.txt');
  
  
// Экранирование спецсимволов в строке 
  
$escaped pg_escape_string($data);
  
  
// Вставка в таблицу базы данных 
  
pg_query("INSERT INTO correspondence (name, data) VALUES ('My letter', '{$escaped}')");
?>

Смотрите также

  • pg_escape_bytea() - Экранирует спецсимволы в строке для вставки в поле типа bytea