ZooKeeper Zookeeper::get

(PECL zookeeper >= 0.1.0)

Zookeeper::get — 노드와 연결된 데이터를 동기적으로 가져옵니다.


설명

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

매개변수

path
노드의 이름입니다. 노드의 상위 항목을 구분하는 슬래시가 있는 파일 이름으로 표현됩니다.
watcher_cb
0이 아니면 노드가 변경되면 클라이언트에 알리기 위해 서버에서 감시가 설정됩니다.
stat
NULL이 아니면 리턴 시 경로에 대한 stat 값을 보유합니다.
max_size
데이터의 최대 크기입니다. 0을 사용하면 이 메서드는 전체 데이터를 반환합니다.

반환 값

성공하면 데이터를 반환하고 실패하면 false를 반환합니다.


오류/예외

이 메소드는 매개변수 개수 또는 유형이 잘못되었거나 노드에서 값을 가져오지 못할 때 PHP 오류/경고를 표시합니다.

주의 버전 0.3.0부터 이 메소드는 ZookeeperException과 파생 상품을 내보냅니다.


Examples

예제 #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 'ERR';
?>
                  
                

위의 예는 다음을 출력합니다.

nodevalue
                

예제 #2 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)
}
                

기타