php8.5
Home/ Manual/ pdo / pgsql/ Pdo\Pgsql::setNoticeCallback

Pdo\Pgsql::setNoticeCallback

PHP function Edit on GitHub ✎

(PHP 8 >= 8.4.0)

Set a callback to handle notice and warning messages generated by the backend

Description

Pdo\Pgsql::setNoticeCallback(callable|null $callback): void

Set a callback to handle notice and warning messages generated by the backend. This includes messages emitted by PostgreSQL itself, as well as those raised by user-defined SQL functions using RAISE. Please note that the actual receipt of these messages depends on the backend setting client_min_messages.

Parameters

callback

If null is passed, the handler is reset to its default state.

Otherwise, the handler is a callback with the following signature:

handler(string $message): void
message

A message generated by the backend.

Return Values

Void

Examples

Pdo\Pgsql::setNoticeCallback example

php
<?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');
?>

The above example will output something similar to:

output
NOTICE:  truncate cascades to table "child"

Source: reference/pdo_pgsql/pdo/pgsql/setnoticecallback.xml · from the official PHP manual (php/doc-en)