(PHP 4 >= 4.3.0, PHP 5, PHP 7)
pg_get_notify — Lit le message SQL NOTIFY
$connection
[, int $result_type
] ) : arraypg_get_notify() reçoit le message de NOTIFY envoyé par une commande SQL NOTIFY. Pour lire le message associé, utilisez la commande LISTEN.
connection
Ressource de connexion PostgreSQL.
result_type
Un paramètre optionnel qui contrôle la façon dont le tableau sera indexé.
result_type
est une constante et peut prendre
les valeurs suivantes : PGSQL_ASSOC
,
PGSQL_NUM
et PGSQL_BOTH
.
L'utilisation de PGSQL_NUM
, pg_get_notify()
retournera un tableau avec des indices numériques, l'utilisation de
PGSQL_ASSOC
retournera un tableau associatif tandis que
PGSQL_BOTH
, la valeur par défaut, retournera
des indices numériques et associatifs.
Un tableau contenant le nom du message NOTIFY.
À partir de PHP 5.4.0 et si le serveur supporte, le tableau contient aussi la version du serveur et la charge utile (payload).
Sinon, si aucun NOTIFY n'est en attente, alors FALSE
sera retourné.
Exemple #1 Exemple avec pg_get_notify()
<?php
$conn = pg_pconnect("dbname=publisher");
if (!$conn) {
echo "Une erreur est survenue.\n";
exit;
}
// ecoute le message 'author_updated' des autres processus
pg_query($conn, 'LISTEN author_updated;');
$notify = pg_get_notify($conn);
if (!$notify) {
echo "Aucun message\n";
} else {
print_r($notify);
}
?>