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() 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.
Note:
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().WarningA 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
Example #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
- pg_escape_identifier() - Escapa um identificador para inserção em um campo de texto
- pg_escape_bytea() - Escapa uma string para inserção em um campo bytea
- pg_escape_string() - Escapa uma string para consulta