CakeFest 2024: The Official CakePHP Conference

Zookeeper::create

(PECL zookeeper >= 0.1.0)

Zookeeper::createCreate a node synchronously

说明

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

This method will create a node in ZooKeeper. A node can only be created if it does not already exists. The Create Flags affect the creation of nodes. If ZOO_EPHEMERAL flag is set, the node will automatically get removed if the client session goes away. If the ZOO_SEQUENCE flag is set, a unique monotonically increasing sequence number is appended to the path name.

参数

path

The name of the node. Expressed as a file name with slashes separating ancestors of the node.

value

The data to be stored in the node.

acls

The initial ACL of the node. The ACL must not be null or empty.

flags

this parameter can be set to 0 for normal create or an OR of the Create Flags

返回值

Returns the path of the new node (this might be different than the supplied path because of the ZOO_SEQUENCE flag) on success, and false on failure.

错误/异常

This method emits PHP error/warning when parameters count or types are wrong or fail to create node.

警告

Since version 0.3.0, this method emits ZookeeperException and it's derivatives.

示例

示例 #1 Zookeeper::create() example

Create a new node.

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

参见

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top