(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
pg_get_notify — Ottiene il messaggio SQL NOTIFY
pg_get_notify() riceve notifiche generate da un
comando SQL NOTIFY
. Per ricevere le notifiche,
è necessario eseguire il comando SQL
LISTEN
.
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.
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
.
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);
}
?>