pg_last_notice

(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)

pg_last_notice Retorna a última mensagem de aviso do servidor PostgreSQL

Descrição

pg_last_notice(PgSql\Connection $connection, int $mode = PGSQL_NOTICE_LAST): array|string|bool

pg_last_notice() retorna a última mensagem de aviso do servidor PostgreSQL na especificada connection. O servidor PostgreSQL envia mensagens de aviso em vários casos, por exemplo ao criar uma coluna SERIAL em uma tabela.

Com pg_last_notice(), você pode evitar a emissão de consultas inúteis verificando se o aviso está ou não relacionado à sua transação.

O rastreamento de mensagens de aviso pode ser definido como opcional definindo 1 para pgsql.ignore_notice no php.ini.

O registro de mensagens de aviso pode ser definido como opcional definindo 0 para pgsql.log_notice no php.ini. A menos que pgsql.ignore_notice esteja definido como 0, a mensagem de aviso não pode ser registrada.

Parâmetros

connection

Uma instância de PgSql\Connection.

mode

Um dos PGSQL_NOTICE_LAST (para retornar o último aviso), PGSQL_NOTICE_ALL (para retornar todos os avisos) ou PGSQL_NOTICE_CLEAR (para limpar avisos).

Valor Retornado

Uma string contendo o último aviso na connection fornecida com PGSQL_NOTICE_LAST, um array com PGSQL_NOTICE_ALL, um bool com PGSQL_NOTICE_CLEAR.

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.
7.1.0 O parâmetro mode foi adicionado.

Exemplos

Example #1 Exemplo de pg_last_notice()

<?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;
?>

O exemplo acima produzirá:

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

Veja Também