PHP Conference Japan 2024

Zookeeper::get

(PECL zookeeper >= 0.1.0)

Zookeeper::get同步取得與節點關聯的資料

說明

public Zookeeper::get(
    字串 $path,
    可呼叫 $watcher_cb = null,
    陣列 &$stat = null,
    整數 $max_size = 0
): 字串

參數

路徑

節點名稱。以檔案名稱表示,並以斜線分隔節點的祖先。

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

以上範例將輸出

nodevalue

範例 #2 Zookeeper::get() stat 範例

取得節點狀態資訊。

<?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