pg_last_notice

Returns the last notice message from PostgreSQL server

&reftitle.description; ``array``string``bool```pg_last_notice` `PgSql\Connection` `connection` `int` `mode` `PGSQL_NOTICE_LAST`

`pg_last_notice` returns the last notice message from the PostgreSQL server on the specified `connection`. The PostgreSQL server sends notice messages in several cases, for instance when creating a `SERIAL` column in a table.

With `pg_last_notice`, you can avoid issuing useless queries by checking whether or not the notice is related to your transaction.

Notice message tracking can be set to optional by setting 1 for `pgsql.ignore_notice` in &php.ini;.

Notice message logging can be set to optional by setting 0 for `pgsql.log_notice` in &php.ini;. Unless `pgsql.ignore_notice` is set to 0, notice message cannot be logged.

&reftitle.parameters;

`connection`

- &pgsql.parameter.connection;

`mode`

- One of `PGSQL_NOTICE_LAST` (to return last notice), `PGSQL_NOTICE_ALL` (to return all notices), or `PGSQL_NOTICE_CLEAR` (to clear notices).

&reftitle.returnvalues;

A `string` containing the last notice on the given `connection` with `PGSQL_NOTICE_LAST`, an `array` with `PGSQL_NOTICE_ALL`, a `bool` with `PGSQL_NOTICE_CLEAR`.

&reftitle.changelog;

&Version; | &Description;
&pgsql.changelog.connection-object;
7.1.0 | The `mode` parameter was added.

&reftitle.examples;

### `pg_last_notice` example

    <?php
      $pgsql_conn = pg_connect("dbname=mark host=localhost");

      $res = pg_query("CREATE TABLE test (id SERIAL)");

      $notice = pg_last_notice($pgsql_conn);

      echo $notice;
    ?>

&example.outputs;

    CREATE TABLE will create implicit sequence "test_id_seq" for "serial" column "test.id"

&reftitle.seealso;

- `pg_query`
- `pg_last_error`