2024 年 PHP 日本大会

Zookeeper::create

(PECL zookeeper >= 0.1.0)

Zookeeper::create同步创建节点

描述

public Zookeeper::create(
    string $path,
    string $value,
    array $acls,
    int $flags = null
): string

此方法将在 ZooKeeper 中创建一个节点。只有在节点不存在的情况下才能创建节点。创建标志会影响节点的创建。如果设置了 ZOO_EPHEMERAL 标志,则如果客户端会话消失,节点将自动删除。如果设置了 ZOO_SEQUENCE 标志,则会在路径名后附加一个唯一的单调递增序列号。

参数

path

节点的名称。表示为文件名,使用斜杠分隔节点的祖先。

value

要存储在节点中的数据。

acls

节点的初始 ACL。ACL 不能为空。

flags

此参数可以设置为 0 用于普通创建,或者设置为创建标志的 OR 值。

返回值

成功时返回新节点的路径(由于 ZOO_SEQUENCE 标志,这可能与提供的路径不同),失败时返回 false。

错误/异常

当参数数量或类型错误或无法创建节点时,此方法会发出 PHP 错误/警告。

警告

从 0.3.0 版本开始,此方法会发出 ZookeeperException 及其派生类。

范例

示例 #1 Zookeeper::create() 例子

创建一个新节点。

<?php
$zookeeper
= new Zookeeper('locahost:2181');
$aclArray = array(
array(
'perms' => Zookeeper::PERM_ALL,
'scheme' => 'world',
'id' => 'anyone',
)
);
$path = '/path/to/newnode';
$realPath = $zookeeper->create($path, null, $aclArray);
if (
$realPath)
echo
$realPath;
else
echo
'ERR';
?>

以上示例将输出

/path/to/newnode

参见

添加注释

用户贡献的注释

此页面没有用户贡献的注释。
To Top