Zookeeper::get

(PECL zookeeper >= 0.1.0)

Zookeeper::getСинхронно получает данные, связанные с узлом

Описание

publicZookeeper::get(
    string$path,
    callable$watcher_cb = null,
    array&$stat = null,
    int$max_size = 0
): string

Список параметров

path

Имя узла. Выражается как имя файла с косой чертой, разделяющей предков узла.

watcher_cb

Если ненулевое значение, на сервере будет установлено наблюдение, чтобы уведомить клиента об изменении узла.

stat

Если не NULL, при возврате будет сохранено значение stat для пути.

max_size

Максимальный размер данных. Если используется 0, метод вернёт все данные.

Возвращаемые значения

Возвращает данные в случае успешного выполнения и false в случае возникновения ошибки.

Ошибки

Метод выдаёт ошибку/предупреждение PHP, когда количество параметров или типы неверны или не получается получить значение от узла.

Предостережение

Начиная с версии 0.3.0, метод выбрасывает ZookeeperException и его производные.

Примеры

Пример #1 Пример использования Zookeeper::get()

Получение значения от узла.

<?php
$zookeeper
= new Zookeeper('locahost:2181');
$path = '/path/to/node';
$value = 'nodevalue';
$zookeeper->set($path, $value);

$r = $zookeeper->get($path);
if (
$r)
echo
$r;
else
echo
'Ошибка';
?>

Результат выполнения приведённого примера:

nodevalue

Пример #2 Пример использования stat Zookeeper::get()

Получение информации о статистике узла.

<?php
$zookeeper
= new Zookeeper('localhost:2181');
$path = '/path/to/node';
$stat = [];
$zookeeper->get($path, null, $stat);
var_dump($stat);
?>

Результат выполнения приведённого примера:

array(11) { ["czxid"]=> float(0) ["mzxid"]=> float(0) ["ctime"]=> float(0) ["mtime"]=> float(0) ["version"]=> int(0) ["cversion"]=> int(-2) ["aversion"]=> int(0) ["ephemeralOwner"]=> float(0) ["dataLength"]=> int(0) ["numChildren"]=> int(2) ["pzxid"]=> float(0) }

Смотрите также

To Top