This page needs an example to understand that you **need** to explicitly call LISTEN before using getNotify, like shown in https://www.php.net/manual/en/function.pg-get-notify.php
<?php
$db = new PDO($dsn, $user, $password, $options);
$db->query('LISTEN test');
$notification = $db->pgsqlGetNotify(PDO::FETCH_ASSOC, 10000);
// or
$db = new Pdo\Pgsql($dsn, $user, $password, $options);
$db->query('LISTEN test');
$notification = $db->getNotify(PDO::FETCH_ASSOC, 10000);
// now you can call NOTIFY elsewhere
// PG> NOTIFY test, 'payload string';
var_dump($notification);
?>
array(3) {
["message"]=>
string(4) "test"
["pid"]=>
int(123565)
["payload"]=>
string(14) "payload string"
}
If you called NOTIFY before calling LISTEN, nothing will be returned!
You receive the first notification only, and you have to call getNotify again. And call LISTEN again if DB connection drops.Pdo\Pgsql::getNotify
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
Pdo\Pgsql::getNotify
Референца за `pdo-pgsql.getnotify.php` со подобрена типографија и навигација.
Pdo\Pgsql::getNotify
Класата Dom\DtdNamedNodeMap
Pdo\Pgsql::getNotify — Добијте асинхронизирано известување
= NULL
$fetchMode = PDO::FETCH_DEFAULT, int $timeoutMilliseconds = 0): array|falseВраќа множество резултати што претставуваат чекачко асинхронизирано известување.
Параметри
fetchMode-
Форматот во кој треба да се врати множеството резултати, една од следниве константи:
timeoutMilliseconds- Времетраењето на чекање за одговор, во милисекунди.
Вратени вредности
Ако едно или повеќе известувања се чекаат, враќа еден ред, со полиња message and pid, инаку враќа false.
Errors/Exceptions
А ValueError се фрла ако
fetchMode не е една од валидните
PDO::FETCH_*
constants.
А ValueError се фрла ако
timeoutMilliseconds е помала од 0.
А E_WARNING се покренува кога
timeoutMilliseconds е поголема од вредноста што може да се содржи во потпишан 32-битен цел број, во кој случај ќе биде максималната вредност на потпишан 32-битен цел број.
Види Исто така
- Испрати MySQL барање - Подготвува и извршува SQL изјава без места за замена
- Ги контролира содржините на вратениот низ како што е документирано во - Зема го следниот ред од множеството резултати
- . Враќа резултати од повикување на назначената функција, користејќи ги колоните на секој ред како параметри во повикот. - Вчитува преостанати редови од сет на резултати