(PHP 8 >= 8.4.0)
Pdo\Pgsql::setNoticeCallback — Устанавливает callback-функцию для обработки уведомлений и предупреждений
Устанавливает callback-функцию для обработки уведомлений и предупреждений.
Сюда входят сообщения, выдаваемые самим PostgreSQL, а также сообщения,
выдаваемые пользовательскими SQL-функциями с помощью RAISE
.
Обратите внимание, что фактическое получение сообщений зависит
от настройки client_min_messages
.
callback
null
, обработчик сбрасывается в состояние по умолчанию.
В противном случае обработчик представляет собой callback-функцию со следующей сигнатурой:
message
Функция не возвращает значения после выполнения.
Пример #1 Пример использования метода Pdo\Pgsql::setNoticeCallback()
<?php
$pdo = new Pdo\Pgsql('pgsql:dbname=test host=localhost', $user, $pass);
$pdo->exec('CREATE TABLE parent(id int primary key)');
$pdo->exec('CREATE TABLE child(id int references parent)');
$pdo->setNoticeCallback(function ($message) {
echo $message;
});
$pdo->exec('TRUNCATE parent CASCADE');
?>
Вывод приведённого примера будет похож на:
NOTICE: truncate cascades to table "child"