PHP

pg_escape_literal

pg_escape_literal

(PHP 5 >= 5.4.4, PHP 7)

pg_escape_literal - 转义文字以插入文本字段

描述

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

pg_escape_literal()转义一个查询PostgreSQL数据库的文字。它以PostgreSQL格式返回一个转义文字。pg_escape_literal()在数据之前和之后添加引号。用户不应该添加引号。建议使用此函数而不是pg_escape_string()。如果列的类型是bytea,则必须使用pg_escape_bytea()。对于转义标识符(例如表,字段名称),必须使用pg_escape_identifier()。

注意:该函数具有内部转义代码,也可以与PostgreSQL 8.4或更低版本一起使用。

参数

connection

PostgreSQL数据库连接资源。如果connection不存在,则使用默认连接。默认连接是pg_connect()或pg_pconnect()所做的最后一个连接。当没有默认连接时,它会引发E_WARNING并返回FALSE

data

包含要转义的文本的字符串。

返回值

包含转义数据的字符串。

例子

Example #1 pg_escape_literal() example

<?php    // Connect to the database   $dbconn = pg_connect('dbname=foo'      // Read in a text file (containing apostrophes and backslashes)   $data = file_get_contents('letter.txt'      // Escape the text data   $escaped = pg_escape_literal($data      // Insert it into the database. Note that no quotes around {$escaped}   pg_query("INSERT INTO correspondence (name, data) VALUES ('My letter', {$escaped})" ?>