pg_escape_literal

Escape a literal for insertion into a text field

&reftitle.description; `string` `pg_escape_literal` `PgSql\Connection` `connection` `string` `data`

`pg_escape_literal` escapes a literal for querying the PostgreSQL database. It returns an escaped literal in the PostgreSQL format. `pg_escape_literal` adds quotes before and after data. Users should not add quotes. Use of this function is recommended instead of `pg_escape_string`. If the type of the column is bytea, `pg_escape_bytea` must be used instead. For escaping identifiers (e.g. table, field names), `pg_escape_identifier` must be used.

This function has internal escape code and can also be used with PostgreSQL 8.4 or less.

&reftitle.parameters;

`connection`

- &pgsql.parameter.connection-with-unspecified-default;

`data`

- A `string` containing text to be escaped.

&reftitle.returnvalues;

A `string` containing the escaped data.

&reftitle.changelog;

&Version; | &Description;
&pgsql.changelog.connection-object;

&reftitle.examples;

### `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})");
    ?>

&reftitle.seealso;

- `pg_escape_identifier`
- `pg_escape_bytea`
- `pg_escape_string`