(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)
pg_last_notice — Возвращает последнее уведомление от сервера PostgreSQL
pg_last_notice() возвращает последнее уведомление, сгенерированное
сервером PostgreSQL на заданном соединении connection
.
В некоторых случаях сервер посылает уведомления, например при создании в таблице
колонки типа SERIAL
.
Благодаря pg_last_notice() не требуется делать лишних запросов, чтобы узнать посылала ваша транзакция уведомления или нет.
Можно отключить отслеживание уведомлений установкой в значение 1
параметра pgsql.ignore_notice
в файле php.ini.
Можно отключить журналирование уведомлений установкой в значение 0 параметра
pgsql.log_notice
в файле php.ini.
Пока этот параметр установлен в значение 0, уведомления невозможно записать в
журнал выполнения.
connection
Экземпляр класса PgSql\Connection.
mode
Одна из констант PGSQL_NOTICE_LAST
(для возврата последнего уведомления),
PGSQL_NOTICE_ALL
(для возврата всех уведомлений)
или PGSQL_NOTICE_CLEAR
(для очистки уведомлений).
Строка, содержащая последнее уведомление на заданном соединении, если
задана опция PGSQL_NOTICE_LAST
,
массив (array), если опция
PGSQL_NOTICE_ALL
и
значение типа bool в случае опции
PGSQL_NOTICE_CLEAR
.
Версия | Описание |
---|---|
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"