2024 日本 PHP 研討會

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 實例;以前需要的是一個 resource
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