pg_get_notify
(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
pg_get_notify — Obtém mensagem SQL NOTIFY
Descrição
pg_get_notify() obtém notificações geradas por um
comando SQL NOTIFY
. Para receber notificações,
o comando SQL LISTEN
deve ser
emitido.
Parâmetros
connection
-
Uma instância de PgSql\Connection.
mode
-
Um parâmetro opcional que controla como o array retornado será indexado.
mode
é uma constante e pode assumir os seguintes valores:PGSQL_ASSOC
,PGSQL_NUM
ePGSQL_BOTH
. UsandoPGSQL_NUM
, a função retornará um array com índices numéricos, usandoPGSQL_ASSOC
ela retornará apenas índices associativos enquantoPGSQL_BOTH
retornará índices numéricos e associativos.
Valor Retornado
Um array contendo o nome da mensagem NOTIFY
e o PID de backend.
Se for compatível com o servidor, o array também conterá a versão do servidor e a carga útil.
Caso contrário, se nenhum NOTIFY
estiver aguardando, então false
é retornado.
Registro de Alterações
Versão | Descrição |
---|---|
8.1.0 |
O parâmetro connection agora espera uma instância de PgSql\Connection;
anteriormente, um resource era esperado.
|
Exemplos
Example #1 Mensagem NOTIFY do PostgreSQL
<?php
$conn = pg_pconnect("dbname=publisher");
if (!$conn) {
echo "Um erro ocorreu.\n";
exit;
}
// Ouve a mensagem 'author_updated' de outros processos
pg_query($conn, 'LISTEN author_updated;');
$notify = pg_get_notify($conn);
if (!$notify) {
echo "Sem mensagens\n";
} else {
print_r($notify);
}
?>