pg_last_notice

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

pg_last_notice 返回来自 PostgreSQL 服务器的最后一个通知消息

说明

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

pg_last_notice() 返回指定 connection 上来自 PostgreSQL 服务器的最后一个通知消息。PostgreSQL 服务器在多种情况下会发送通知消息,例如在表中创建 SERIAL 列时。

使用 pg_last_notice(),您可以通过检查通知是否与您的事务相关,来避免发出无用的查询。

可以通过在 php.ini 中为 pgsql.ignore_notice 设置 1 来将通知消息跟踪设置为可选。

可以通过在 php.ini 中为 pgsql.log_notice 设置 0 来将通知消息日志记录设置为可选。除非将 pgsql.ignore_notice 设置为 0,否则无法记录通知消息。

参数

connection

一个 PgSql\Connection 实例。

mode

PGSQL_NOTICE_LAST(返回最后一个通知)、PGSQL_NOTICE_ALL(返回所有通知)或 PGSQL_NOTICE_CLEAR(清除通知)之一。

返回值

使用 PGSQL_NOTICE_LAST 时,返回包含给定 connection 上最后一个通知的 string;使用 PGSQL_NOTICE_ALL 时,返回一个 array;使用 PGSQL_NOTICE_CLEAR 时,返回一个 bool

变更日志

版本 说明
8.1.0 connection 参数现在期望一个 PgSql\Connection 实例;以前,期望的是一个 资源
7.1.0 添加了 mode 参数。

范例

范例 #1 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;
?>

上面的例子将会输出

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

参见

添加备注

用户贡献的备注

此页面没有用户贡献的备注。
To Top