CascadiaPHP 2024

pg_escape_literal

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

pg_escape_literal Escapa um literal para inserção em um campo de texto

Descrição

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

pg_escape_literal() escapa um literal para consultar o banco de dados PostgreSQL. Ele retorna um literal de escape no formato PostgreSQL. pg_escape_literal() adiciona aspas antes e depois dos dados. Os usuários não devem adicionar aspas. O uso desta função é recomendado em vez de pg_escape_string(). Se o tipo da coluna for bytea, pg_escape_bytea() deverá ser usado no lugar. Para identificadores de escape (por exemplo, tabelas, nomes de campos), pg_escape_identifier() deve ser usado.

Nota:

Esta função possui código de escape interno e também pode ser usada com PostgreSQL 8.4 ou inferior.

Parâmetros

connection

Uma instância de PgSql\Connection. Quando o parâmetro connection não for especificado, a conexão padrão será usada. A conexão padrão é a última conexão feita por pg_connect() ou pg_pconnect().

Aviso

A partir do PHP 8.1.0, usar a conexão padrão tornou-se defasado.

data

Uma string contendo texto a ser escapado.

Valor Retornado

Uma string contendo os dados escapados.

Registro de Alterações

Versão Descrição
8.1.0 O parâmetro connection agora espera uma instância de PgSql\Connection; anteriormente, um resource era esperado.

Exemplos

Exemplo #1 Exemplo de pg_escape_literal()

<?php
// Conecta ao banco de dados
$dbconn = pg_connect('dbname=foo');

// Lê um arquivo de texto (contendo apóstrofos e barras invertidas)
$data = file_get_contents('letter.txt');

// Escapa dos dados de texto
$escaped = pg_escape_literal($data);

// Insere-o no banco de dados. Observe que não há aspas em torno de {$escaped}
pg_query("INSERT INTO correspondence (name, data) VALUES ('My letter', {$escaped})");
?>

Veja Também

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top