(PHP 5 >= 5.4.4, PHP 7, PHP 8)
pg_escape_literal — Escapa um literal para inserção em um campo de texto
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.
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().
A partir do PHP 8.1.0, usar a conexão padrão tornou-se defasado.
data
Uma string contendo texto a ser escapado.
Uma string contendo os dados escapados.
Versão | Descrição |
---|---|
8.1.0 |
O parâmetro connection agora espera uma instância de PgSql\Connection;
anteriormente, um resource era esperado.
|
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})");
?>