pg_get_notify

(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)

pg_get_notifyOttiene il messaggio SQL NOTIFY

Descrizione

pg_get_notify(resource $connection, int $result_type = ?): array

pg_get_notify() riceve notifiche generate da un comando SQL NOTIFY. Per ricevere le notifiche, è necessario eseguire il comando SQL LISTEN.

Elenco dei parametri

connection

Risorsa di connessione al database PostgreSQL.

result_type

Un parametro facoltativo che controlla come viene indicizzato l'array restituito. result_type è una costante e può assumere i seguenti valori: PGSQL_ASSOC, PGSQL_NUM e PGSQL_BOTH. Usando PGSQL_NUM, pg_get_notify() restituirà un array con indici numerici, usando PGSQL_ASSOC restituirà solo indici associativi mentre PGSQL_BOTH, l'impostazione predefinita, restituirà indici sia numerici che associativi.

Valori restituiti

Un array contenente il nome del messaggio NOTIFY e il PID di backend. A partire da PHP 5.4.0 e se supportato dal server, l'array contiene anche la versione del server e il payload. Altrimenti se non è in attesa alcuna NOTIFY, allora viene restituito false.

Esempi

Example #1 Messaggio NOTIFY di PostgreSQL

<?php
$conn
= pg_pconnect("dbname=publisher");
if (!
$conn) {
echo
"Si è verificato un errore.\n";
exit;
}

// Ascolta il messaggio 'author_updated' da altri processi
pg_query($conn, 'LISTEN author_updated;');
$notify = pg_get_notify($conn);
if (!
$notify) {
echo
"Nessun messaggio\n";
} else {
print_r($notify);
}
?>

Vedere anche: