Pdo\Pgsql::setNoticeCallback

(PHP 8 >= 8.4.0)

Pdo\Pgsql::setNoticeCallbackУстанавливает callback-функцию для обработки уведомлений и предупреждений бэкенда

Описание

public Pdo\Pgsql::setNoticeCallback(?callable $callback): void

Метод устанавливает callback-функцию для обработки сообщений с уведомлениями и предупреждениями, которые генерирует бэкенд. К этим сообщениям относятся уведомления и предупреждения, которые выдаёт сама СУБД PostgreSQL, и сообщения, которые выдают пользовательские SQL-функции через команду RAISE. Обратите внимание, что фактическое получение сообщений зависит от параметра client_min_messages в настройках бэкенда.

Список параметров

callback
При передаче значения null обработчик сбрасывается в состояние по умолчанию.

В остальных случаях обработчиком будет callback-функция со следующей сигнатурой:

handler(string $message): void
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"
Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top