(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
pg_get_notify — Liefert eine SQL-NOTIFY-Nachricht
pg_get_notify() gibt eine NOTIFY-Nachricht zurück, die
vom SQL-Kommando NOTIFY
gesendet wurde. Um diese
Nachrichten zu erhalten, muss zuvor das SQL-Kommando
LISTEN
ausgeführt worden sein.
connection
Eine PgSql\Connection-Instanz.
mode
Ein optionaler Parameter, der bestimmt, wie das zurückgegebene Array indiziert werden soll.
mode
ist eine Konstante, die einen der folgenden Werte annehmen kann:
PGSQL_ASSOC
, PGSQL_NUM
und PGSQL_BOTH
.
Wenn die Funktion mit PGSQL_NUM
aufgerufen wird, wird ein Array mit numerischen Indizes zurückgegeben,
mit PGSQL_ASSOC
wird ein Array mit assoziatives Indizes zurückgegeben
und mit PGSQL_BOTH
ein Array mit beiden Indizes.
Ein Array, das die NOTIFY
-Nachricht und
die PID des Datenbankprozesses enthält. Falls vom Server unterstützt,
enthält das Array ebenfalls die Serverversion und die Nutzdaten. Existiert
kein NOTIFY
, wird false
zurückgegeben.
Version | Beschreibung |
---|---|
8.1.0 |
Der Parameter connection erwartet nun eine PgSql\Connection-Instanz;
vorher wurde eine Ressource erwartet.
|
Beispiel #1 PostgreSQL-NOTIFY-Nachricht
<?php
$conn = pg_pconnect("dbname=publisher");
if (!$conn) {
echo "Konnte keine Verbindung aufbauen.\n";
exit;
}
// Listen-Kommando 'author_updated', um Benachrichtigungen
// von anderen Prozessen zu erhalten
pg_query($conn, 'LISTEN author_updated;');
$notify = pg_get_notify($conn);
if (!$notify) {
echo "Keine Nachrichten\n";
} else {
print_r($notify);
}
?>