pg_get_notify

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

pg_get_notify Lee el mensaje SQL NOTIFY

Descripción

pg_get_notify(PgSql\Connection $connection, int $mode = PGSQL_ASSOC): array|false

pg_get_notify() recibe el mensaje de NOTIFY enviado por un comando SQL NOTIFY. Para leer el mensaje asociado, se debe utilizar el comando LISTEN.

Parámetros

connection

Una instancia PgSql\Connection.

mode

Un parámetro opcional que controla cómo el array devuelto es indexado. mode es una constante que puede tomar los siguientes valores : PGSQL_ASSOC, PGSQL_NUM y PGSQL_BOTH. Usando PGSQL_NUM, la función devolverá un array con índices numéricos, usando PGSQL_ASSOC, devolverá solo índices asociativos mientras que PGSQL_BOTH devolverá ambos índices numéricos y asociativos.

Valores devueltos

Un array que contiene el nombre del mensaje NOTIFY. Si el servidor lo soporta, el array contiene también la versión del servidor y la carga útil (payload). De lo contrario, si no hay ningún NOTIFY pendiente, se devolverá false.

Historial de cambios

Versión Descripción
8.1.0 El parámetro connection ahora espera una instancia de PgSql\Connection ; anteriormente, se esperaba un resource.

Ejemplos

Ejemplo #1 Ejemplo con pg_get_notify()

<?php
$conn
= pg_pconnect("dbname=publisher");
if (!
$conn) {
echo
"Se ha producido un error.\n";
exit;
}

// escucha el mensaje 'author_updated' de otros procesos
pg_query($conn, 'LISTEN author_updated;');
$notify = pg_get_notify($conn);
if (!
$notify) {
echo
"Ningún mensaje\n";
} else {
print_r($notify);
}
?>

Ver también

  • pg_get_pid() - Lee el identificador de proceso del servidor PostgreSQL